90 lines
2.1 KiB
Python
90 lines
2.1 KiB
Python
|
"""
|
||
|
Los Diccionarios son un tipo de dato para almacernar colecciones de datos
|
||
|
(collection data types: List, Tuple, Set, Dictionary)
|
||
|
|
||
|
Diccionario: Par Llave-Valor, desordenada, mutable.
|
||
|
"""
|
||
|
|
||
|
# Creación diccionario vacío
|
||
|
mi_dicc = {}
|
||
|
|
||
|
# diccionario con pares key-value
|
||
|
mi_dicc = {'nombre': 'Clarence', 'edad': 31, 'ciudad': 'Lo Zerafín'}
|
||
|
|
||
|
# funcion dict()
|
||
|
mi_dicc = dict(nombre='Clarence', edad=31, ciudad='Lo Zerafín')
|
||
|
|
||
|
# acceder a valor
|
||
|
valor = mi_dicc['nombre']
|
||
|
# Clarence
|
||
|
|
||
|
# agregar par clave valor
|
||
|
mi_dicc['mail'] = "clarence@dolares.up"
|
||
|
|
||
|
# modficiar valor
|
||
|
mi_dicc['mail'] = 'otro@mail.ip'
|
||
|
|
||
|
# borrar item
|
||
|
del mi_dicc['ciudad']
|
||
|
|
||
|
# extraer o eliminar con pop('llave')
|
||
|
mi_dicc.pop('edad')
|
||
|
|
||
|
# popitem(), elimina el último item ordenado
|
||
|
mi_dicc.popitem()
|
||
|
|
||
|
mi_dicc = dict(nombre='Clarence', edad=31, ciudad='Lo Zerafín')
|
||
|
|
||
|
# verifcar si existe una llave
|
||
|
if 'nombre' in mi_dicc:
|
||
|
valor = mi_dicc['nombre']
|
||
|
|
||
|
# verifcar con try-catch
|
||
|
try:
|
||
|
msg = mi_dicc['fecha nacimiento']
|
||
|
except KeyError:
|
||
|
msg = KeyError
|
||
|
finally:
|
||
|
print(msg)
|
||
|
|
||
|
# Obtener item con get('llave')
|
||
|
mi_dicc.get('edades')
|
||
|
# retorna None si existe
|
||
|
|
||
|
# iterar diccionario, values()
|
||
|
for valor in mi_dicc.values():
|
||
|
pass
|
||
|
|
||
|
# iterar diccionario, items()
|
||
|
for llave, valor in mi_dicc.items():
|
||
|
pass
|
||
|
|
||
|
# esta asignación hace referencia al mismo punto en memoria
|
||
|
dicc_copia = mi_dicc
|
||
|
# cualquier cambio en dicc_copia modfica al mi_dicc.
|
||
|
|
||
|
# copiar diccionario copy()
|
||
|
dicc_copia = mi_dicc.copy()
|
||
|
|
||
|
# copiar diccionario dict(diccionario)
|
||
|
dicc_copia = dict(mi_dicc)
|
||
|
|
||
|
# fusionar diccionarios
|
||
|
mi_dicc = dict(nombre='Clarence', edad=31, mail='mi@mail')
|
||
|
mi_dicc2 = dict(nombre='Estanislao', edad=30, ciudad='Pto. Natales')
|
||
|
mi_dicc.update(mi_dicc2)
|
||
|
# {'nombre': 'Estanislao', 'edad': 30, 'mail': 'mi@mail', 'ciudad': 'Pto. Natales'}
|
||
|
|
||
|
# tipos de datos de llaves
|
||
|
# numeros, strings, tuplas de elementos inmutables...
|
||
|
mi_dicc = {3: 9, 7:32, 21:3}
|
||
|
mi_dicc[3]
|
||
|
# 9
|
||
|
mi_dicc = {(2, 6): 8}
|
||
|
# las listas son mutables, no pueden usarse como llaves
|
||
|
|
||
|
# comprensión de diccionario
|
||
|
cuadrados = {i: i*i for i in range(4)}
|
||
|
# {0: 0, 1: 1, 2: 4, 3: 9}
|
||
|
|