Aniadir mas de un elemento a un diccionario a la vez
Hernan Martinez Foffani
hernan en orgmf.com.ar
Lun Jul 22 21:00:35 CEST 2002
> con bucles for podemos recorrer uno de los diccionarios e ir
> anadiendo uno a uno las claves y
> valores al otro diccionario:
>
> >>> for a in l1.keys():
> ... nuevo[a] = l1[a]
> ... for b in l2.keys():
> ... nuevo[b] = l2[b]
> ...
> >>> nuevo
> {'datepreserve': 0, 'anio': 2002, 'dia': 15, 'mes': 7, 'permissions': 484}
>
> asi ya tenemos un unico diccionario con los elementos de dos.
mm.... me parece que el bucle en b debería estar a la misma
altura que el de a, y no anidado. eso si entendí bien el
problema.
otra aproximación al problema:
>>> dic_1 = {'a':3, 'b':33}
>>> dic_2 = {'c':4, 'd':404}
>>> lista = dic_1.items()
>>> lista.extend(dic_2.items())
>>> nuevo = dict(lista)
>>> nuevo
{'a': 3, 'c': 4, 'b': 33, 'd': 404}
>>>
el metodo .items() de los diccionarios devuelve una lista de
tuplas (pares ordenados clave y valor) de dicho diccionario.
además la funcion dict (mas precisamente, un constructor)
recibe como parametro una lista de tuplas y devuelve un
diccionario.
es como decir que una es la "inversa" de la otra.
-Hernan
Más información sobre la lista de distribución Python-es