Python es uno de los lenguajes que más se recomienda para adentrarnos en el mundo de la programación, programar en Python puede ser tan sencillo como:
1 2#Python como una calculadora 3print(2+2) 4 5#Output 4
Python es un lenguaje de programación extremadamente potente, no por gusto es el más usado en la actualidad y al mismo tiempo, el lenguaje que más se recomienda como puerta de entrada al mundo del desarrollo de aplicaciones.
Desde hace un tiempo, Python se ha apoderado de muchas especializaciones a partir de su sencillez y potencia, pudiendo utilizar desde para la creación de aplicaciones webs, hasta para Machine Learning, AI y como herramienta para la investigación y desarrollo de tecnologías y técnicas en el ámbito médico.
Pero claro, si vamos a hablar de como programar con Python, no perseguiremos ejemplos tan específicos ni avanzados sino, miraremos ejemplos que sean más simples pero que entendiendo la base de los mismos, ya tendríamos para poder sentarnos a escribir nuestros primeros scripts.
Un ejemplo muy simple, sería utilizar a Python como nuestra calculadora personal, de forma tal que con el siguiente código: print(2+2)
, Python nos devolvería 4, ¿Pero pudiéramos hacer unas operaciones más complejas?
1#Operaciones matemáticas más complejas 2 3print(((10+25)*12-5)/6) 4 5#Output: 69.16666666666667
siempre vamos a utilizar el método
print()
para mostrar en la terminal lo que le pasemos entre los paréntesis
Como se puede observar, Python será capaz de realizar cálculos complejos mientras se escriban como mismo lo haríamos en matemática. Se respetarán los () y orden de ejecución de las operaciones.
Normalmente, tener una lista de tareas que tenemos que realizar, resulta un método muy utilizado por todos cuando queremos darle orden de prioridad a las tareas que debemos realizar.
En Python podemos crear listas de la siguiente forma:
1todoList = ["make the bed", "take the dog for a walk", "learn python"] 2 3print(todoList) 4#Output: ['make the bed', 'take the dog for a walk', 'learn python'] 5 6#If we want to retrieve a single element from a list, we'll use square brackets [] and pass the position of the element on the list we want to retrieve, just remember that the first position is 0 and not 1. 7 8print(todoList[0]) 9#Output: make the bed
Siempre que trabajemos con un grupo de elementos, como las tareas en nuestra lista de tareas en este caso, los agrupamos en una "lista" o "array" haciendo uso de los
[]
Todos los lenguajes de programación hacen uso de variables, que son como pequeñas cajas donde vamos a guardar la información que necesitamos. En nuestro ejemplo,
todoList
es una variable que almacena una lista de tareas
Es muy habitual encontrarnos con una tarea que requiere que hagamos lo mismo una cierta cantidad de veces, lo cual puede ser (y normalmente es) tedioso.
Python, como el resto de lenguajes de programación permite crear ciclos para realizar la misma tarea la cantidad de veces que necesitemos. Un ejemplo, sería salirnos del castigo de los profesores que nos ponían a escribir la misma frase 100 veces... Con Python, esto lo solucionamos de una manera muy sencilla
1for x in range(10): 2 print("I will study python") 3 4#Output: 5# I will study python 6# I will study python 7# I will study python 8# I will study python 9# I will study python 10# I will study python 11# I will study python 12# I will study python 13# I will study python 14# I will study python
for x in range(10) es un loop que va a repetir el bloque de código que hemos establecido mientras que x, que comenzará con el valor de 0, sea menor que 10
Antes de pasar al siguiente ejemplo, creo necesario explicar un poco como son las funciones en Python:
1#Ejemplo de función en Python 2 3def myFunc(params): 4 # bloque de código (código que se va a ejecutar) 5 return #código que se va a devolver
def
(definition) es una palabra reservada que se utiliza para definir una función
myFunc
el nombre de la función, que será el que utilicemos para ejecutarla,
(params)
parámetros que recibirá la función, son como si fueran variables que solo existirán dentro de la función
:
Indican donde comienza el bloque de código
bloque de código
aquí irán todas las operaciones lógicas que necesitará realizar nuestra función para poder devolver el resultado que queremos.
return
lo que devolverá la función al ser ejecutada
Ojo, algunos lenguajes de programación, como JavaScript, hacen uso de
{}
para definir el bloque de código que se ejecutará, Python por su lado, hace uso de la indexación correcta de los elementos. por eso siempre el bloque de código y el retorno nunca estarán a la misma altura que la declaración de la función.
Ahora que nos ha quedado claro cómo se compone una función en Python, podemos utilizar lo que aprendimos para crear un programa que nos devuelva colores aleatorias a partir de una lista de colores que hemos definido
1import random 2 3def randomColor(): 4 colors= ["blue", "red", "black", "yellow", "pink"] 5 randomSelectedColor = colors[random.randrange(4)] 6 return randomSelectedColor 7 8print(randomColor()) 9 10#Output: yellow
random es un módulo de Python que nos permite generar números aleatorios, por lo que tenemos que importar (traer) a nuestro programa el módulo para poderlo utilizar
En el ejemplo anterior, tenemos una función que se llama randomColor
que en el bloque de código lo que tiene es una lista de colores y una variable, randomSelectedColor.
Para seleccionar un color aleatorio, de nuestra lista de colores, hacemos uso de el módulo random
que importamos al principio, utilizando su método randrange()
para definir hasta qué número queremos generar números aleatorios (en este caso 4, que es el largo de nuestra lista de colores).
Después de haber extraído de nuestra lista de colores uno de manera aleatoria y haberlo almacenado en nuestra variable randomSelectedColor, lo que quedaría sería devolverlo en el retorno de nuestra función.
A cada vez, nos preguntamos ¿Cuántos días faltan para mi cumpleaños? Pues, creemos un pequeño programa para saberlo
1import datetime 2now = datetime.date.today() 3date = str(input("Enter your birthdate month and day with this format MM/DD: ")).split("/") 4birthday = datetime.date(now.year, int(date[0]), int(date[1])) 5days = (birthday - now).days 6print(fdays + " left until you level up!")
import datetime
now
almacena la fecha actual haciendo uso de datetime.date.today()
que es un método que nos devuelve específicamente esa información.input
para pedirle al usuario que introduzca la fecha de nacimiento y utilizamos str()
para que esa información Python la vea como un texto y no números. Del mismo modo, separamos después el día del mes del cumpleaños del usuario utilizando .split("/")
y esta información es la que almacenaremos en nuestra variable date
birthday
lo que hará será almacenar la fecha que nos ha dado el usuario, junto al año actual en el formato que necesita el módulo datetime
para poder realizar operaciones.days
será la resta entre la fecha de nacimiento que hemos formateado y la fecha actual, que retornada en días cuántos faltan para que la resta de 0 (si diera 0, sería el día del cumpleaños)days
junto a un texto los días que faltan para subir de nivel!Como debes de imaginar, cuando hacemos un programa, mezclamos diferentes tipos de variables, módulos y demás herramientas a nuestra disposición.
En el siguiente ejemplo estaremos haciendo uso de objetos, listas, ciclos y módulo random. El ejemplo vendrá a solucionar un problema en el que a veces nos encontramos, no sabemos que ropa ponernos para salir. Este script, nos permitirá a partir de una lista de elementos en nuestro armario, ayudarnos a seleccionar de manera aleatoria que ponernos.
1import random 2 3myWardrobe = { 4 "up": ["t-shirt", "long sleeves", "shirt"], 5 "down": ["jean", "formal", "bomber"], 6 "shoes": ["snickers", "formal", "flip-flop"], 7 "accessories": ["sunglasses", "bag", "cap"], 8 "main_color": ["red", "black", "white", "blue"] 9} 10 11def outfitMaker(wardrobe): 12 for clothing in wardrobe: 13 print(f"{clothing}: {wardrobe[clothing][random.randrange(len(wardrobe[clothing]))]}") 14 return "and that's what you should wear today!" 15 16print(outfitMaker(myWardrobe)) 17 18#Output: 19#up: long sleeves 20#down: bomber 21#shoes: flip-flop 22#accessories: sunglasses 23#main_color: white 24#and that's what you should wear today!
Analizando el ejemplo:
myWardrobe
que tendrá las propiedades (llaves) de nuestro armario y los valores serán las opciones que tenemos para utilizar.Un objeto (o diccionario) es un tipo de dato en Python que almacena pares de valores (llave : valor)
outfitMaker
que va a recibir como parámetro nuestro armario y se encargará de escogernos nuestro outfit.
Como pueden apreciar, Python nos permite realizar pequeños programas, tan simples como de una línea, como programas un poquito más complejos y otros, que no se cubrieron en este artículo, que serían ya programas de mucha mayor complejidad que al hacerse utilizando Python, permiten sencillez y al mismo tiempo robustez en el desarrollo y calidad de los programas, puedes ller este artículo sobre ¿Para qué sirve Python? para tener una idea más amplia sobre todos sus usos.
Hope you enjoy the reading and keep on the Geek side with 4Geeks!