Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬의 체인맵

<시간/>

ChainMap은 사전을 단일 단위로 캡슐화하는 데 사용됩니다.

ChainMap은 컬렉션에 있는 표준 라이브러리 클래스입니다. 모듈.

처음에 그것을 사용하려면 컬렉션 표준 라이브러리 모듈을 가져와야 합니다.

import collections

이 섹션에서는 ChainMap 클래스의 일부 기능을 볼 것입니다.

지도 및 키() values() 함수

맵은 ChainMap에서 모든 사전의 모든 키 값 쌍을 표시하는 데 사용됩니다. keys() 메서드는 ChainMap에서 키를 반환하고 values() 메서드는 ChainMap에서 다른 키의 모든 values()를 반환합니다.

예시 코드

import collections as col
con_code1 = {'India' : 'IN', 'China' : 'CN'}
con_code2 = {'France' : 'FR', 'United Kingdom' : 'GB'}
chain = col.ChainMap(con_code1, con_code2)
print("Initial Chain: " + str(chain.maps))
print('The keys in the ChainMap: ' + str(list(chain.keys())))
print('The values in the ChainMap: ' + str(list(chain.values())))

출력

Initial Chain: [{'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}]
The keys in the ChainMap: ['China', 'United Kingdom', 'India', 'France']
The values in the ChainMap: ['CN', 'GB', 'IN', 'FR']

new_child() 및 역 메서드

new_child() 메서드는 처음에 ChainMap에 다른 사전 객체를 추가하는 데 사용됩니다. 그리고 역 방법은 또한 키-값 쌍의 순서를 역전시키기 위해 ChainMap에 사용될 수 있습니다.

예시 코드

import collections as col
con_code1 = {'India' : 'IN', 'China' : 'CN'}
con_code2 = {'France' : 'FR', 'United Kingdom' : 'GB'}
code = {'Japan' : 'JP'}
chain = col.ChainMap(con_code1, con_code2)
print("Initial Chain: " + str(chain.maps))
chain = chain.new_child(code)    #Insert New Child
print("Chain after Inserting new Child: " + str(chain.maps))
chain.maps = reversed(chain.maps)
print("Reversed Chain: " + str(chain))

출력

Initial Chain: [{'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}]
Chain after Inserting new Child: [{'Japan': 'JP'}, {'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}]
Reversed Chain: ChainMap({'France': 'FR', 'United Kingdom': 'GB'}, {'India': 'IN', 'China': 'CN'}, {'Japan': 'JP'})