Python의 단일 표현식에서 두 개의 사전을 어떻게 병합합니까?
문제:
두 개의 사전을 새 사전으로 병합합니다. 두 번째 사전의 값은 두 번째 사전의 값을 덮어씁니다. 먼저.
가능한 해결 방법:
Python 3.9.0 이상:
z = x | y
In 파이썬 3.5 또는 이상:
z = {**x, **y}
Python 2, 3.4 이하:
def merge_two_dicts(x, y): z = x.copy() # Start with keys and values of x z.update(y) # Modifies z with keys and values of y return z z = merge_two_dicts(x, y)
설명:
1. Python 3.9.0 이상:
파이프 연산자(|)는 PEP-584에 도입되었으며 사전 압축 풀기 구문을 사용하여 두 사전을 결합합니다.
2. Python 3.5 이상:
사전 압축 해제에는 이중 별표 연산자(**)가 사용됩니다. 각 사전은 키-값 쌍으로 압축이 풀린 후 새 사전으로 병합됩니다.
3. Python 2, 3.4 이하:
3.5 이전 Python 버전에서는 copy() 및 update() 메서드를 사용하여 사전을 수동으로 병합해야 합니다.
참고:
딕셔너리 압축 풀기 구문({x, y})을 사용하는 것이 dicta를 사용하는 것보다 성능이 더 좋습니다. 이해력({k: v for d in (x, y) for k, v in d.items()}) 또는 itertools의 chain() 함수.
위 내용은 Python에서 두 사전을 효율적으로 병합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!