English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
ChainMap은 딕셔너리를 단일 요소로 둘러싸는 데 사용됩니다.
ChainMap은 표준 라이브러리 클래스로,collections모듈.
먼저 사용하기 위해, 우리는 그를 수집 표준 라이브러리 모듈에 가져와야 합니다.
import collections
이 장에서는 ChainMap 클래스의 몇 가지 기능을 볼 것입니다
keys()
values()
메서드이 맵을 사용하여 ChainMap에 있는 모든 사전의 모든 키-값 쌍을 표시합니다. 이keys()
메서드는 ChainMap에서 키를 반환하며, 이 메서드는 ChainMapvalues()
모든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'}] ChainMap의 키: ['China', 'United Kingdom', 'India', 'France'] ChainMap의 값: ['CN', 'GB', 'IN', 'FR']
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("Inserting new Child 후의 Chain: ") + str(chain.maps)) chain.maps = reversed(chain.maps) print("Reversed Chain: ") + str(chain))
출력 결과
Initial Chain: [{'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}] Inserting new Child 후의 Chain: [{'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'})