miércoles, 14 de febrero de 2018

Zona Python # 10 .- Diccionarios de datos en Python

Que son y como se usan los diccionarios en Python

Un Diccionario en Python es una estructura de datos y un tipo de dato con características especiales que nos permite almacenar cualquier tipo de valor como enteros, cadenas, listas e incluso otras funciones. Estos diccionarios nos permiten además identificar cada elemento por una clave (Key).

diccionario = {'país' : 'México', 'ciudad' : ´Aguascalientes´, 'diccionario' : ['ejemplo', 1] }

Podemos acceder al elemento de un Diccionario mediante la clave de este elemento:

1.- print diccionario['país']
2.- print diccionario['ciudad']
3.- print diccionario['diccionario']

Y su resultado sería:

1.- México
2.- Aguascalientes
3.- [´ejemplo, 1]´

Podemos insertar una lista dentro de un diccionario. Para acceder a cada uno de sus elementos usamos los índices. En el caso de la lista dentro de nuestra tupla de ejemplo sería de la siguiente forma:

1.- print diccionario['diccionario'][0]
2.- print diccionario['diccionario'][1]

Cuyo resultado sería:

1.- ejemplo
2.- 1

Métodos de los Diccionarios

dict ()

Recibe como parámetro una representación de un diccionario y si es factible, devuelve un diccionario de datos.

dic = dict(nombre='David', apellido='Pérez', edad=36)
dic → {‘nombre’ : 'David', ‘apellido’ : 'Pérez', ‘edad’ : 36}

zip()

Recibe como parámetro dos elementos iterables, ya sea una cadena, una lista o una tupla. Ambos parámetros deben tener el mismo número de elementos. Se devolverá un diccionario relacionando el elemento i-esimo de cada uno de los iterables.

dic = dict(zip('abcd',[1,2,3,4]))
dic → {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}

items()

Devuelve una lista de tuplas, cada tupla se compone de dos elementos: el primero será la clave y el segundo, su valor.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
items = dic.items()
items → [(‘a’,1),(‘b’,2),(‘c’,3),(‘d’,4)]

keys()

Retorna una lista de elementos, los cuales serán las claves de nuestro diccionario.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
keys= dic.keys()
keys→ [‘a’,’b’,’c’,’d’] 

values()

Retorna una lista de elementos, que serán los valores de nuestro diccionario.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
values= dic.values()
values→ [1,2,3,4] 

clear()

Elimina todos los ítems del diccionario dejándolo vacío.

dic 1 = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
dic1.clean()
dic1 → { }

copy()

Retorna una copia del diccionario original.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
dic1 = dic.copy()
dic1 → {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}

fromkeys()

Recibe como parámetros un iterable y un valor, devolviendo un diccionario que contiene como claves los elementos del iterable con el mismo valor ingresado. Si el valor no es ingresado, devolverá none para todas las claves.

dic = dict.fromkeys(['a','b','c','d'],1)
dic → {‘a’ : 1, ’b’ : 1, ‘c’ : 1 , ‘d’ : 1}

get()

Recibe como parámetro una clave, devuelve el valor de la clave. Si no lo encuentra, devuelve un objeto none.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
valor = dic.get(‘b’) 
valor → 2

pop()

Recibe como parámetro una clave, elimina esta y devuelve su valor. Si no lo encuentra, devuelve error.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
valor = dic.pop(‘b’) 
valor → 2
dic → {‘a’ : 1, ‘c’ : 3 , ‘d’ : 4}

setdefault()

Funciona de dos formas. En la primera como get

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
valor = dic.setdefault(‘a’)
valor → 1

Y en la segunda forma, nos sirve para agregar un nuevo elemento a nuestro diccionario.

dic = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
valor = dic.setdefault(‘e’,5)
dic → {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4 , ‘e’ : 5}

update()

Recibe como parámetro otro diccionario. Si se tienen claves iguales, actualiza el valor de la clave repetida; si no hay claves iguales, este par clave-valor es agregado al diccionario.

dic 1 = {‘a’ : 1, ’b’ : 2, ‘c’ : 3 , ‘d’ : 4}
dic 2 = {‘c’ : 6, ’b’ : 5, ‘e’ : 9 , ‘f’ : 10}
dic1.update(dic 2)
dic 1 → {‘a’ : 1, ’b’ : 5, ‘c’ : 6 , ‘d’ : 4 , ‘e’ : 9 , ‘f’ : 10}

No hay comentarios:

Publicar un comentario