> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 두 사전을 효율적으로 병합하려면 어떻게 해야 합니까?

Python에서 두 사전을 효율적으로 병합하려면 어떻게 해야 합니까?

Barbara Streisand
풀어 주다: 2024-12-22 17:24:11
원래의
936명이 탐색했습니다.

How Can I Efficiently Merge Two Dictionaries in Python?

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() 메서드를 사용하여 사전을 수동으로 병합해야 합니다.

  • copy ()는 원본 사전의 얕은 복사본을 생성합니다.
  • update()는 복사된 사전을 두 번째 사전의 키-값 쌍으로 업데이트합니다. Dictionary.

참고:

딕셔너리 압축 풀기 구문({x, y})을 사용하는 것이 dicta를 사용하는 것보다 성능이 더 좋습니다. 이해력({k: v for d in (x, y) for k, v in d.items()}) 또는 itertools의 chain() 함수.

위 내용은 Python에서 두 사전을 효율적으로 병합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿