Python: dict methods

Vaciar un diccionario

Método: clear()

>>> diccionario = {"color": "violeta", "talle": "XS", "precio": 174.25} 
>>> print diccionario 
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
 
>>> diccionario.clear() 
>>> print diccionario 
{}

Copiar un diccionario

Método: copy()

>>> diccionario = {"color": "violeta", "talle": "XS", "precio": 174.25} 
>>> remera = diccionario.copy() 
>>> diccionario
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
>>> remera
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
 
>>> diccionario.clear() 
>>> diccionario
{} 
>>> remera 
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
 
>>> musculosa = remera 
>>> remera 
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
>>> musculosa 
{'color': 'violeta', 'precio': 174.25, 'talle': 'XS'} 
 
>>> remera.clear() 
>>> remera 
{} 
>>> musculosa 
{} 
>>>

Crear un nuevo diccionario desde las claves de una secuencia

Método: dict.fromkeys(secuencia[, valor por defecto])

>>> secuencia = ["color", "talle", "marca"]
>>> diccionario1 = dict.fromkeys(secuencia)
>>> diccionario1
{'color': None, 'marca': None, 'talle': None}
 
>>> diccionario2 = dict.fromkeys(secuencia, 'valor x defecto')
>>> diccionario2
{'color': 'valor x defecto', 'marca': 'valor x defecto', 'talle': 'valor x defecto'}

Concatenar diccionarios

Método: update(diccionario)

>>> diccionario1 = {"color": "verde", "precio": 45}
>>> diccionario2 = {"talle": "M", "marca": "Lacoste"}
>>> diccionario1.update(diccionario2)
>>> diccionario1
{'color': 'verde', 'precio': 45, 'marca': 'Lacoste', 'talle': 'M'}

Establecer una clave y valor por defecto

Método: setdefault("clave" [, None|valor_por_defecto])

Si la clave no existe, la crea con el valor por defecto. Siempre retorna el valor para la clave pasada como parámetro.

>>> remera = {"color": "rosa", "marca": "Zara"} 
>>> clave = remera.setdefault("talle", "U") 
>>> clave 
'U'
>>> remera 
{'color': 'rosa', 'marca': 'Zara', 'talle': 'U'} 
 
>>> remera2 = remera.copy() 
>>> remera2 
{'color': 'rosa', 'marca': 'Zara', 'talle': 'U'} 
>>> clave = remera2.setdefault("estampado") 
>>> clave 
>>> remera2 
{'color': 'rosa', 'estampado': None, 'marca': 'Zara', 'talle': 'U'} 
 
>>> clave = remera2.setdefault("marca", "Lacoste") 
>>> clave 
'Zara' 
>>> remera2 
{'color': 'rosa', 'estampado': None, 'marca': 'Zara', 'talle': 'U'}
 

Obtener el valor de una clave

Método: get(clave[, "valor x defecto si la clave no existe"])

>>> remera.get("color") 
'rosa'
 
>>> remera.get("stock") 
>>> remera.get("stock", "sin stock") 
'sin stock'

Saber si una clave existe en el diccionario

Método: has_key(clave)

>>> existe = remera.has_key("precio") 
>>> existe 
False
 
>>> existe = remera.has_key("color") 
>>> existe 
True

Obtener las claves y valores de un diccionario

Método: iteritems()

Alias: items()

diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'} 
for clave, valor in diccionario.iteritems(): 
    print "El valor de la clave %s es %s" % (clave, valor)

Salida:

El valor de la clave color es rosa 
El valor de la clave marca es Zara 
El valor de la clave talle es U

Obtener las claves de un diccionario

Método: keys()

>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> claves = diccionario.keys()
>>> claves
['color', 'marca', 'talle']

Obtener los valores de un diccionario

Método: values()

>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'}
>>> valores = diccionario.values()
>>> valores
['rosa', 'Zara', 'U']

Obtener la cantidad de elementos de un diccionario

Para contar los elementos de un diccionario, al igual que con las listas y tuplas, se utiliza la función integrada len().

>>> diccionario = {'color': 'rosa', 'marca': 'Zara', 'talle': 'U'} 
>>> len(diccionario)
3

 

SOURCEhttp://librosweb.es/libro/python/capitulo_8.html

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s