Python contiene un contenedor llamado » ChainMap » que encapsula muchos diccionarios en una sola unidad. ChainMap es miembro del módulo » colecciones «.
Ejemplo:
# Python program to demonstrate # ChainMap from collections import ChainMap d1 = {'a': 1, 'b': 2} d2 = {'c': 3, 'd': 4} d3 = {'e': 5, 'f': 6} # Defining the chainmap c = ChainMap(d1, d2, d3) print(c)
Producción:
ChainMap({'a': 1, 'b': 2}, {'c': 3, 'd': 4}, {'e': 5, 'f': 6})
Veamos varias Operaciones en ChainMap
Operaciones de acceso
- llaves() :- Esta función se utiliza para mostrar todas las claves de todos los diccionarios en ChainMap.
- valores(): – Esta función se utiliza para mostrar los valores de todos los diccionarios en ChainMap.
- maps(): – Esta función se usa para mostrar claves con los valores correspondientes de todos los diccionarios en ChainMap.
# Please select Python 3 for running this code in IDE # Python code to demonstrate ChainMap and # keys(), values() and maps # importing collections for ChainMap operations import collections # initializing dictionaries dic1 = { 'a' : 1, 'b' : 2 } dic2 = { 'b' : 3, 'c' : 4 } # initializing ChainMap chain = collections.ChainMap(dic1, dic2) # printing chainMap using maps print ("All the ChainMap contents are : ") print (chain.maps) # printing keys using keys() print ("All keys of ChainMap are : ") print (list(chain.keys())) # printing keys using keys() print ("All values of ChainMap are : ") print (list(chain.values()))
Producción :
All the ChainMap contents are : [{'b': 2, 'a': 1}, {'c': 4, 'b': 3}] All keys of ChainMap are : ['a', 'c', 'b'] All values of ChainMap are : [1, 4, 2]
Nota: observe que la clave denominada «b» existe en ambos diccionarios, pero solo la primera clave del diccionario se toma como valor clave de «b». El ordenamiento se realiza a medida que se pasan los diccionarios en función.
Operaciones de manipulación
- nuevo_niño() :- Esta función agrega un nuevo diccionario al comienzo de ChainMap.
- reversed() :- Esta función invierte el orden relativo de los diccionarios en ChainMap.
# Please select Python 3 for running this code in IDE # Python code to demonstrate ChainMap and # reversed() and new_child() # importing collections for ChainMap operations import collections # initializing dictionaries dic1 = { 'a' : 1, 'b' : 2 } dic2 = { 'b' : 3, 'c' : 4 } dic3 = { 'f' : 5 } # initializing ChainMap chain = collections.ChainMap(dic1, dic2) # printing chainMap using map print ("All the ChainMap contents are : ") print (chain.maps) # using new_child() to add new dictionary chain1 = chain.new_child(dic3) # printing chainMap using map print ("Displaying new ChainMap : ") print (chain1.maps) # displaying value associated with b before reversing print ("Value associated with b before reversing is : ",end="") print (chain1['b']) # reversing the ChainMap chain1.maps = reversed(chain1.maps) # displaying value associated with b after reversing print ("Value associated with b after reversing is : ",end="") print (chain1['b'])
Producción :
All the ChainMap contents are : [{'b': 2, 'a': 1}, {'b': 3, 'c': 4}] Displaying new ChainMap : [{'f': 5}, {'b': 2, 'a': 1}, {'b': 3, 'c': 4}] Value associated with b before reversing is : 2 Value associated with b after reversing is : 3
Este artículo es una contribución de Manjeet Singh . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA