Mapa de string en Python

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

Deja una respuesta

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