Concatenar diccionarios en python

Una entrada cortita pero de mucha utilidad. Quiero compartir con ustedes como unir (concatenar) 2 diccionarios en python.

Como concatenar 2 diccionarios en python

Para unir 2 diccionarios en python (un diccionario dentro del otro) vamos a utilizar el método update(), que es el equivalente a  la función extend() que nos sirve para concatenar listas.

Vamos a poner un ejemplo:

Utilizaremos el shell interactivo de python:

»»»dicc_1 = {1: "a" , 2: "b" , 3: "c"}
»»»dicc_2 = {4: "d" , 5: "e" , 6:  "f"}
»»»dicc_1
{1: "a", 2: "b", 3: "c"}
»»»dicc_2
{4: "d", 5: "e" , 6: "f"}

»»»dicc_1.update(dicc_2)
»»»dicc_2
{4: "d", 5: "e" , 6: "f"}
»»»dicc_1
{1: "a" , 2: "b" , 3: "c" , 4: "d", 5: "e" , 6: "f"}
»»»

Cuales son tus trucos para concatenar diccionarios?

  1. Gastón Tognola dice:

    Muy buena info! gracias

    1. PythonDiario dice:

      Gracias Zultano por tu comentario. Saludos

  2. diario dice:

    Yo quería saber, si quiero expresar que se cumplan dos condiciones para que me haga un cálculo, cómo lo pongo?
    Por ejemplo, mientras la altura >400 y la presión <500
    Existe alguna forma de unirlas en una misma línea?
    lunazul91@gmail.com

    Gracias

    1. PythonDiario dice:

      Hola diario. Claro que se puede. Te dejo un Ejemplo:

      altura = 600
      presion = 300

      if altura > 400 and presion < 500:
      ----print "La altura es mayor a 400 y la presion menor a 500"
      else:
      ----print "No se cumple la condicion"

      Con and se tienen que cumplir las 2 condiciones. También se puede usar or para que se cumpla una u otra.

      Saludos

  3. Unknown dice:

    Amigos, tengo esta duda y aun no la puedo resolver:
    Declarando 2 diccionarios:
    dicc_1 = {1: "a" , 2: ['b', 'z'] , 3: "c"}
    dicc_2 = {4: "d" , 5: "e" , 2: ['f', 'x']}
    Quisiera obtener este resultado:
    dicc_3 = {1: "a" , 2: ['b', 'z', 'f', 'x'] , 3: "c", 4: "d" , 5: "e" }
    Alguien tuviera alguna idea de como obtenerlo?
    Muchas Gracias por el apoyo,
    Saludos

    1. Anónimo dice:

      Buenas, lo podría hacer con:
      dicc_1 = {1: "a" , 2: ['b', 'z'] , 3: "c"}
      dicc_2 = {4: "d" , 5: "e" , 2: ['f', 'x']}
      dicc_1[2].extend(dicc_2[2])
      dicc_2[2]= dicc_1[2]
      dicc_1.update(dicc_2)

  4. Unknown dice:

    Que tal añadiendole un nuevo metodo a la clase dict?

    http://repl.it/0E6/1 3:)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Te has suscrito correctamente al boletín

Se produjo un error al intentar enviar tu solicitud. Inténtalo de nuevo.

Mi Diario Python will use the information you provide on this form to be in touch with you and to provide updates and marketing.