Aunque Python es un lenguaje muy flexible en cuestión de tipologías de datos, en este artículo detallaremos distintas opciones que pueden resultarnos interesantes a futuro, entre estos tipos se encontrarán los datos numéricos, textos, listas, tuplas y mapas o diccionarios.
Antes de empezar con los tipos de datos distinguiremos dos formas de declarar variables para ahorrar esfuerzos y líneas en nuestro código:
1. Declaración simple: Es el modo de uso más común por el cual definiremos el valores de una variable con una asignación tal como a =
2. Declaración múltiple: Existen dos posibles opciones
– Opción 1 → Asignación de valor único a varias variables en una única línea:
a = b = c = 1
print(a)
print(b)
print(c)
– Opción 2 → Asignación de valores distintos sobre diferentes variables en una única línea:
a, b, c, d, e, f = «queso», «que»,»eso», «cigarral», «es», «el»
Texto = «¿» + b + » » + e + » » + c + «?, » + c + » » + e + » » + a + » ¿» + b + » » + a + » » + e + «? – » + a + » » + f + » » + d + «.»
print (Texto)
Una vez puntualizados los modos de declaración comenzamos con el objetivo principal de este artículo.
¿Qué tipos de datos existen en Python?
No entraremos de momento en tipos de datos relacionados con bases de datos, registros, punteros por referencia, punteros por valor, condensadores de fluzo o como aprender Kung Fú en Matrix. El listado de tipos que veremos en este tutorial es:
- Números (enteros y reales)
- Textos (comúnmente llamados strings)
- Lista (también llamados Lists)
- Tuplas (también llamados Tuples)
- Mapas (también llamados Maps, Diccionarios, Dictionary o Dic)
- Booleanos
Nota: Nos gustaría aclarar de nuevo que el lenguaje Python, al contrario a otros lenguajes, no requiere especificar el tipo de dato que estamos usando, es decir, el mismo lenguaje interpretará a partir de la propia declaración que tipo de dato estamos usando y la reserva de memoria que debe destinar a dicha declaración.
1. Números: La asignación de números será directa y su definición como enteros o reales dependerá de si son definidos con decimales o no. En posteriores artículos os mostraremos como hacer conversiones entre ambos tipos y aplicar formatos como número de decimales.
a = 100 #Esta asignación declarará automáticamente la variable como un número entero
b = 1000.5 #Esta asignación declarará automáticamente la variable como un número real con decimales
2. Textos (Strings): Las variables de tipo texto serán definidas entre comillas simples o comillas dobles como mostramos en el siguiente ejemplo.
a = «Me llamo como me puso el cura.»
print(a)
3. Listas: Una lista es una variable que almacenará múltiples valores separados por comas asignando una posición a cada valor semejante al comportamiento de arrays en C, ¿¡Ay madre pero que $%»@&ç* dice el bailaferias este!?, aquí es donde empieza la chicha e imaginamos que nuestro coco comenzará a echar humo, así pues, para que todos lo entendamos usaremos algo de imaginación y el siguiente ejemplo:
Imaginad que tenemos una estantería con tres baldas, compramos tres libros de aventuras y dejamos un libro en cada balda. Llega el día en que queremos leer el libro de la segunda balda y pedimos a nuestro hermano pequeño Pepython que lo traiga al salón (¿¡que lo traiga Pepython que para eso soy el hermano mayo y mando yo no!?).
Ahora vamos a reflejar este ejemplo dentro de Python:
EstanteriaLibros = [«Libro Aventuras 1», «Libro Aventuras 2», «Libro Aventuras 3»]
print (EstanteriaLibros[1])
Nota: La numeración de posiciones en listas comenzará por cero así pues la posición de «Libro Aventuras 1» es 0, «Libro Aventuras 2» es 1 y «Libro Aventuras 3» es 2.
En nuestro ejemplo la variable de tipo lista «EstanteriaLibros» sería el equivalente a nuestra estantería, la segunda balda equivaldría a la posición 1 de la lista, el libro de la segunda balda sería el texto «Libro Aventuras 2» y la acción de nuestro hermano Pepython sería el equivalente a llamar a la función print().
A continuación mostraremos varios modos de uso de estas listas (ojo no es necesario escribir los comentarios marcados con #):
MiGranLista = [‘Libro1′,’Libro2′,’Libro3’, ‘Libro4’]
MiMiniLista = [‘Libro5′,’Libro6’]
print (MiGranLista) #Imprime la lista completa
print (MiGranLista[0]) #Imprime el primer valor de la lista
print (MiGranLista[1:3]) #Imprime los valores comprendidos entre las posiciones 1 y 3
print (MiGranLista[2:]) #Imprime los valores existentes a partir de la posición 2
print (MiMiniLista * 2) #Imprime todos los valores de la lista MiMiniLista dos veces
print (MiGranLista + MiMiniLista) #Imprime el contenido de ambas listas
MiMegaLista = MiGranLista + MiMiniLista #Crea una nueva lista llamada MiMegaLista con la combinación de ambas listas
print(MiMegaLista) #Impresión de lista final resultante
MiMegaLista.append(‘Libro7’) #Agregará un nuevo valor al final de la lista
del MiMegaLista[2] #Eliminará el valor contenido en la posición 2 de la lista
4. Tuplas: El tipo de dato Tupla sigue exactamente el mismo concepto y comportamiento que las listas con dos importantes diferencias. La primera diferencia es el modo de declaración, las tuplas son declaradas a través del uso de paréntesis () en lugar de corchetes [], la segunda diferencia es el estado de solo lectura, es decir, una vez declarado el contenido de una tupla éste no se puede modificar.
MiPrimeraTupla = (‘Valor1’, ‘Valor2’, ‘Valor3’)
print (MiPrimeraTupla)
5. Mapas: Los mapas poseen un comportamiento similar a las listas con una mejora añadida, nos ofrecen la ventaja de poder asignar un identificador único a cada valor de la lista, es decir, podremos identificar el valor de la lista deseado a través de una palabra clave en lugar del número de posición que ocupa en la lista. Este comportamiento nos será de gran utilidad pues podremos crear una variable que actuará como una mini base de datos o tabla como veremos en los siguientes ejemplos:
Nota: En los siguientes ejemplos marcaremos en negrita los identificadores para dejar algo claro cual es cada parte en la definición de un mapa.
MapaDeportes = {‘Pedro‘:’Futbol’, ‘Juan‘:’Baloncesto’, ‘Ana‘:’Tenis’}
print (MapaDeportes[‘Ana’])
Podremos llevar a cabo las siguientes acciones sobre nuestro mapa o diccionario:
MapaDeportes[‘Ana’] = ‘Ciclismo’ #De este modo modificaremos el contenido del identificador ‘Ana’ de ‘Tenis’ a ‘Ciclismo’
print (MapaDeportes.keys()) #Imprimirá el listado de identificadores del mapa
print (MapaDeportes.values()) #Imprimirá el listado de valores del mapa
del MapaDeportes[‘Pedro’] #Eliminará el identificador ‘Pedro’ así como su valor asignado
print (MapaDeportes) #Listado completo de contenido de mapa
MapaDeportes[‘Guillermo’] = ‘Dormir’ #Actualizará el contenido del identificador ‘Guillermo’ y en caso de no existir lo creará
6. Booleanos: Este tipo de dato es el más sencillo y uno de los más usados en programación, solo puede tomar dos valores posibles que son True o False. Es común su uso en tomas de decisiones pues encontraremos muchos casos donde decidiremos a partir de un booleano si ejecutamos una parte concreta del código o no.
Esperamos no haber provocado muchos dolores de cabeza y que disfrutéis de vuestros nuevos conocimientos! 😀
Listado de artículos relacionados:
Artículo 1: Introducción
Artículo 2: Operadores
Artículo 3: Variables
Artículo 4: Tipos de datos
Artículo 5: Sentencias de Control (1)
Artículo 6: Sentencias de Control (2)