Bienvenidos una vez más a Python desde Cero, serie en donde aprendemos Python desde cero. En el capítulo anterior descargamos Python, lo instalamos, nos paseamos por las diferentes maneras sobre como ejecutar scripts y hicimos nuestro primer programa, un Hola Mundo!.

Hoy, aprenderemos las variables y sus tipos de datos, los operadores que podemos usar y las estructuras de control que deberíamos utilizar para desarrollar nuestro propio código.

Como el capítulo de hoy va a hacer un aprendizaje dinámico, vamos a usar el Shell de Python ya que nos permite ejecutar línea por línea el código que deseemos probar.

Para ejecutar el Shell de Python haremos lo siguiente:

Windows

Debemos navegar a la carpeta de instalación de Python y hacer doble-click en python.exe. Les recomiendo que si van a desarrollar en Python, creen un atajo para así no tener que estar realizando todo este proceso cada vez que queramos iniciar el Shell.

Mac o Linux

Abrimos el Terminal y tipeamos python

Si les aparece el siguiente mensaje quiere decir que ya estamos dentro del Shell

Python 2.7.5 (default, Oct 11 2012, 20:14:37)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

Observamos que estamos usando Python 2, configuración que dejamos en el capítulo anterior (Python 2.7.5). Si por alguna razón decidieron instalar Python 3, estén atentos porque pueden existir algunas diferencias en los comandos de código que vamos a usar.


Variables

Pensemos que una variable es un lugar en donde podemos guardar diferentes tipos de datos. Crear una variable en Python es más sencillo que en otros lenguajes de programación. La estructura es la siguiente:

nombre = valor

Donde nombre es el nombre que le quieras dar a la variable y valor es el valor que le quieras asignar a dicha variable.

Tipos de Datos

Números

Veamos un ejemplo:

>>> estados = 12

Estaríamos asignando 12 a la variable estados.

Si tipeamos el nombre de la variable en el Shell, este nos devolvería el valor. Veamos:

>>> estados
12

Python soporta diferente tipos de números por ejemplo:

Enteros (int)
>>> estados
12
Decimales (Float)

>>> decimal = 10.5

Como puedes observar no es necesario declarar el tipo de variable como en otros lenguajes, Python lo descifra por ti.

Cadena de caracteres (Strings)

Podemos almacenar un texto dentro de una variable siempre y cuando este dentro de comillas simples o dobles. Veamos un ejemplo:

>>> saludo = “Bienvenido a Codehero.co”

Si tipeamos el nombre de la variable en el Shell, este nos devolvería el valor. Veamos:

>>> saludo
'Bienvenido a Codehero.co'

Si queremos usar comillas simples dentro de una declaración o viceversa lo podemos hacer haciendo uso de \ delante de las comillas que deseemos que pertenezcan al texto. Veamos un ejemplo:

 >>> mensaje = "Dicen que \'Codehero.co\' es el mejor sitio para aprender a programar"
>>> mensaje
"Dicen que 'Codehero.co' es el mejor sitio para aprender a programar"

Booleans

Representación de Verdadero(True) o Falso(False) dentro de una variable. Veamos un ejemplo:

>>> esHombre = True

Asignamos a la variable esHombre el valor de True (Verdadero). Si tipeamos el nombre de la variable en el Shell, este nos devolvería el valor. Veamos:

>>> esHombre

True

En Python es importante que la primera letra de True o False este en mayúscula.

Vectores (Array)

Es un conjunto de objetos encapsulados dentro de una sola variable. En Python se denominan listas. Veamos un ejemplo de cómo crear una lista:

>>> miLista = [1, 2, 3]

Observemos que todos los objeto que queramos encapsular deben estar entre corchetes [ ].

En el ejemplo anterior asignamos a miLista los objetos 1, 2 y 3. Si tipeamos el nombre de la variable en el Shell, este nos devolvería el valor. Veamos:

>>> miLista
[1, 2, 3]

Las listas pueden contener objetos diferentes, por ejemplo:

>>> miLista = [1, 'codehero', False]

Además, pueden encapsular listas dentro de la misma lista, ejemplo:

>>> miLista = [1, [4, ‘codehero’, 9], True]

Ahora si queremos saber o retornar un valor en específico dentro de una lista lo hacemos de la siguiente manera:

nombre_de_la_lista[El número del objeto en el orden de creación]

Veamos un ejemplo:

>>> miLista = [1, [4, 'codehero', 9], True]
>>> miLista[0]
1
>>> miLista[2]
True

Debemos observar que en Python los objetos dentro de una lista se indexan a partir del 0, eso quiere decir que mi primer objeto va estar en la posición 0 y el segundo en la posición 1 y así sucesivamente.

Otra característica de porque Python es un lenguaje sencillo de utilizar, es que podemos crear variables en línea y asignarles su valor respectivamente, veamos como se hace:

>>> a,b,c = 1,2,3

Observemos que creamos una variable a, una b y una c y le asignamos 1, 2, 3 respectivamente.

Así mismo podemos asignarle el mismo valor a múltiples variables veamos como:

>>> a = b = c = 1

Asignamos 1 a la variable a, b y c.

En Python es importante asignarle un valor a una variable la primera vez que la creamos, de lo contrario nos arrojará un error. La solución a este detalle es asignar valores básicos o neutros dependiendo del tipo de dato. Ejemplo: numero = 0, mensaje = “”.


Comentarios

Veamos la manera de como comentar el código en Python. Uno crea comentarios principalmente para recordar que tipo de funcionalidad tiene ese código en particular. Para comentar usamos #, todo lo que este escrito después del numeral no será tomado en cuenta. Veamos unos ejemplos:

>>> #Esto es un comentario
>>> nombre = ‘codehero’ #Asignamos el nombre del sitio a la variable nombre


Operadores

Son elementos que nos permiten manipular las variables. Veamos unos ejemplos:


2 + 3 #Adición, retorna 5
8 - 5 #Sustracción, retorna 3
2 * 6 #Multiplicación, retorna 12
12 / 3 #Division, retorna 4
7 % 3 #Modulo, retorna el residuo de la division, 1 en este caso.
3**2 #Potencias, retorna 9

Nosotros también podemos asignar a la misma variable el resultado de una operación. Veamos el siguiente código:

x = 2
x += 4 #Agrega 4 a x, ahora x es igual a 6
x /= 2 #Divide x por 2, ahora x es igual 3

Los operadores no solo funcionan con números, también los podemos usar en cadenas de caracteres. Por ejemplo, si tenemos las siguientes variables a = ‘Codehero’ y b = ‘es el mejor’ las podemos concatenar de la siguiente forma:

>>> a = 'Codehero '
>>> b = 'es el mejor'
>>> a + b
'Codehero es el mejor'

Estructuras de control

Una vez que hayas creado y manipulado variables, las estructura de control te permitirán manejar el flujo de la data. Los dos tipos de estructuras que aprenderemos el día de hoy son:

Condicionales

Los condicionales te permiten ejecutar diferentes bloques de código dependiendo de que valor posea una variable en cuestión. Veamos unos ejemplos:

Para esta parte del tutorial vamos a usar scripts ya que vamos a necesitar ejecutar más de una línea de código a la vez. Para saber como ejecutar un script desde la consola te recomiendo que revises el capítulo anterior).

esActivo = True
if esActivo:
print ‘Codehero esta activo’

Lo que hace el código anterior es chequear si la variable <code>esActivo</code> es igual a <code>True</code>, como la variable la declaramos <code>esActivo = True</code>, al ejecutar el script nos va a retornar <code>Codehero esta activo</code>.

<h3>Tipos de condicionales:</h3>


<h5>Menor</h5>

Valida si una variable es menor a otra.

if 2 < 3:
print ‘Dos es menor que tres’
Mayor

Valida si una variable es mayor a otra.

if 2 > 3:
print ‘Dos es mayor que tres’
Igual

Valida si una variable es igual a otra.

if 2 == 3:
print ‘Dos es igual que tres’
Diferente

Valida si una variable es diferente a otra.

if 2 != 3:
print ‘Dos es diferente que tres’
Mayor Igual

Valida si una variable es diferente a otra.

if 2 &gt;= 3:
print ‘Dos es mayor o igual que tres’
Menor Igual

Valida si una variable es diferente a otra.

if 2 &lt;= 3:
print ‘Dos es menor o igual que tres’

Hasta ahora vimos la manera de ejecutar un solo bloque de código pero que pasa cuando quiero ejecutar diferentes bloques, sencillo, usamos el comando else. Veamos un ejemplo:

esActivo = False
if esActivo:
print ‘Es activo’
else:
print ‘No esta activo’

Si queremos ejecutar más de dos bloques con varias condiciones usamos el comando elif. Veamos como:

a = 15
if a &lt; 3:
print ‘Es menor que tres’
elif a == 5:
print ‘Es igual a cinco’
else:
print ‘Es mayor que quince’

Bucles

Es una sentencia que se realiza repetidas veces a un trozo aislado de código. Hoy vamos a aprender los bucles mas básicos que son for y while

Bucle For

Es un bucle en la que se puede indicar el número mínimo de iteraciones. Veamos un ejemplo:

miLista = [1,2,3,4,5]

for a in miLista:
print a

Si lo ejecutamos obtenemos:

1
2
3
4
5

Bucle While

Su propósito es repetir un bloque de código mientras una condición se mantenga verdadera.

a,b = 0,5

while a &lt; b:
print a
a += 1

Observemos que en este caso para detener el ciclo necesitamos aumentar el valor de la variable a con la siguiente instrucción a += 1

Si lo ejecutamos obtenemos:

0
1
2
3
4

Conclusión

Esto es todo por ahora, pero hoy cubrimos suficientes técnicas como para que vayan practicando. Siéntase libres de leer el tutorial una y otra vez hasta que tenga sentido. Cualquier duda que tengan se las contestaré a través de los comentarios, además espero que se unan y le echen un vistazo a todo el resto de la serie!