4Geeks logo
Sobre Nosotros

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Data Science and Machine Learning - 16 wks

Full-Stack Software Developer - 16w

Buscar en lecciones

Aprendizaje social y en vivo

La forma más eficiente de aprender: Únete a una cohorte con compañeros, transmisiones en vivo, sesiones improvisadas de codificación, tutorías en vivo con expertos reales y mantenga la motivación.

← Regresar a lecciones
Editar en Github

Introducción a la Programación en Python: Guía para Principiantes

Programar en Python
¿Qué se puede hacer con Python?

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

Programar en Python

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.

¿Qué se puede hacer con Python?

Calculadora

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.

Creando listas

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

Trabajando con ciclos

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

Haciendo uso de números aleatorios

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.

Trabajando con fechas:

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!")
  • Primero necesitaremos importar el módulo de fechas con import datetime
  • La variable nowalmacena la fecha actual haciendo uso de datetime.date.today() que es un método que nos devuelve específicamente esa información.
  • Hacemos uso de inputpara 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
  • La variable 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)
  • Imprimimos haciendo uso de la concatenación para devolver nuestra variable days junto a un texto los días que faltan para subir de nivel!

Mezclándolo un poco

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:

  • importamos random para poderlo utilizar en nuestro código
  • Creamos un objeto 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)

  • Creamos la función outfitMaker que va a recibir como parámetro nuestro armario y se encargará de escogernos nuestro outfit.
    • Primero crearemos un ciclo para recorrer nuestro objeto
    • Después iremos mirando cada una de las propiedades (llaves) del objeto y de la lista de opciones, iremos sacando un elemento de manera aleatoria
    • Cuando se termine el ciclo, habremos recibido un elemento para cada uno de las llaves y nos devolverá entonces la función "and that 's what you should wear today!"
  • El último paso sería ejecutar la función llamándola y pasandole nuestro armario para que pueda realizar las operaciones.

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!