Algunas anotaciones del libro Python para todos

Colecciones:

Listas, tuplas y diccionarios

Listas

La lista es un tipo de colección ordenada. Sería equivalente a lo que en otros lenguajes se conoce por arrays, o vectores. Pueden contener cualquier tipo de dato: numeros, cadenas, booleanos y tambien listas¡¡


In [3]:
l = [1,'uno',1+1j]
l


Out[3]:
[1, 'uno', (1+1j)]

In [4]:
l[0]


Out[4]:
1

In [5]:
l[1]


Out[5]:
'uno'

In [6]:
l[2]


Out[6]:
(1+1j)

In [8]:
l[0] = [True,False]

In [10]:
l


Out[10]:
[[True, False], 'uno', (1+1j)]

In [13]:
#podemos "medir" cuantos elementos hay en la lista
len(l)


Out[13]:
3

In [15]:
#si queremos acceder a un elemento de una lista que esta dentro de otra
#el primer indice es donde esta ubicada la lista y el segundo el elemento buscado
l[0][1]


Out[15]:
False

In [18]:
#permite slicing 
l[0:2]


Out[18]:
[[True, False], 'uno']

In [19]:
#Cuando hacemos slicing hay valores por defecto que no es necesario explicitar, como el inicio y final
l[1:] #slicing desde la posicion 1 hasta el final


Out[19]:
['uno', (1+1j)]

Tuplas

poseen todas las características de las listas, pero se diferencian en que son inmutables(sus valores no se pueden modificar una vez creadas) y tienen tamaño fijo. Esto hace que sean menos costosas computacionalmente(ahorran memoria)


In [22]:
#se construyen con comas entre cada elemento
t = (1,2,'hola')
t


Out[22]:
(1, 2, 'hola')

In [23]:
t[2]


Out[23]:
'hola'

In [24]:
len(t)


Out[24]:
3

Diccionarios

Los diccionarios, también llamados matrices asociativas, deben su nombre a que son colecciones que relacionan una clave y un valor

El primer valor se trata de la clave y el segundo del valor asociado a la clave. Como clave podemos utilizar cualquier valor inmutable: podríamos usar números, cadenas, booleanos, tuplas, ... pero no listas o diccionarios, dado que son mutables


In [29]:
d = {'Nombre':'Martin','Apellido':'Noblía','Carrera':'IACI','Legajo':13882}

La diferencia principal entre los diccionarios y las listas o las tuplas es que a los valores almacenados en un diccionario se les accede no por su índice, porque de hecho no tienen orden, sino por su clave, utilizando de nuevo el operador []


In [30]:
d['Legajo']


Out[30]:
13882

In [31]:
d['Carrera'] = 'TUPI'

In [32]:
d


Out[32]:
{'Apellido': 'Nobl\xc3\xada',
 'Carrera': 'TUPI',
 'Legajo': 13882,
 'Nombre': 'Martin'}

In [ ]: