Foros del Web » Programando para Internet » Python »

Añadir pares de valores a un diccionario existente

Estas en el tema de Añadir pares de valores a un diccionario existente en el foro de Python en Foros del Web. Parto de un diccionario paises que contiene tres diccionarios dentro. Los valores de cada uno de estos diccionarios son otros diccionarios (pares clave/valor): Código: paises ...
  #1 (permalink)  
Antiguo 03/01/2017, 09:27
 
Fecha de Ingreso: abril-2016
Mensajes: 11
Antigüedad: 1 año
Puntos: 0
Añadir pares de valores a un diccionario existente

Parto de un diccionario paises que contiene tres diccionarios dentro. Los valores de cada uno de estos diccionarios son otros diccionarios (pares clave/valor):

Código:
paises = {
'A': {1: 'Buenos Aires', 2: 'Cordova'},
'I': {1: 'Roma', 2: 'Pisa'},
'B': {1: 'Sao Paolo', 2: 'Rio de Janeiro'}
}
Quiero añadir al diccionario paises el contenido del diccionario update de tal manera que los pares clave/valor de las claves que no existían en paises ('U') se añadan a este y que al mismo tiempo en aquellas claves ('A' y 'I') donde ya existían, se añadan sus elementos sin sustituir a los existentes. Quiero hacerlo recorriendo los pares clave/valor de update mediante un bucle for.

Código:
update = {
'A': {3: 'Mar del Plata', 4: 'Rosario'},
'I': {3: 'Milan'},
'U': {1: 'San Francisco', 2: 'Miami'}
}
la idea es que al final pueda obtener el siguiente código:

Código:
paises = {
'A': {1: 'Buenos Aires', 2: 'Cordova',3: 'Mar del Plata', 4: 'Rosario'},
'I': {1: 'Roma', 2: 'Pisa',3: 'Milan'},
'B': {1: 'Sao Paolo', 2: 'Rio de Janeiro'},
'U': {1: 'San Francisco', 2: 'Miami'}
}
He probado varias opciones con setdefault() y update() pero no he encontrado la solución perfecta.

Gracias.

Última edición por dangimar; 03/01/2017 a las 09:37
  #2 (permalink)  
Antiguo 15/02/2017, 11:37
Avatar de iukaeru  
Fecha de Ingreso: mayo-2012
Mensajes: 126
Antigüedad: 4 años, 11 meses
Puntos: 12
Respuesta: Añadir pares de valores a un diccionario existente

paises = {
"A": {1: "Buenos Aires", 2: "Cordova"},
"I": {1: "Roma", 2: "Pisa"},
"B": {1: "Sao Paolo", 2: "Rio de Janeiro"}
}

print(paises)


paises["A"]["3"] = "Mar de plata"
paises["A"]["4"] = "Rosario"

# ¡ A ver qué te sale !
print(paises)
__________________
¡Atencion, Peligro: Autodidacta opinando como si supiera!



La zona horaria es GMT -6. Ahora son las 11:32.