>백엔드 개발 >파이썬 튜토리얼 >공통 키에 대한 값을 합산하여 두 개의 사전을 Python 방식으로 결합하려면 어떻게 해야 합니까?

공통 키에 대한 값을 합산하여 두 개의 사전을 Python 방식으로 결합하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-10 17:23:16232검색

How Can I Pythonically Combine Two Dictionaries, Summing Values for Common Keys?

Python 방식으로 두 사전 결합

Python에서 사전을 사용할 때 여러 사전을 하나로 병합해야 하는 경우가 많습니다. 이러한 시나리오의 일반적인 요구 사항은 두 사전에 나타나는 키에 대한 값을 추가하여 사전을 결합하는 것입니다.

예를 들어 다음 두 사전을 고려해보세요.

Dict A: {'a': 1, 'b': 2, 'c': 3}
Dict B: {'b': 3, 'c': 4, 'd': 5}

우리의 목표는 병합하는 것입니다. 이 사전을 사용하여 다음 결과를 얻습니다.

{'a': 1, 'b': 5, 'c': 7, 'd': 5}

즉, 두 사전에 키가 나타나면 해당 값을 합산해야 합니다. 하나의 사전에만 존재하는 키는 원래 값을 유지해야 합니다.

Python에서 이를 달성하는 우아한 방법은 컬렉션 모듈의 Counter 클래스를 활용하는 것입니다.

from collections import Counter

A = Counter({'a': 1, 'b': 2, 'c': 3})
B = Counter({'b': 3, 'c': 4, 'd': 5})
result = A + B

Counter 클래스는 값의 발생 횟수(개수)를 추적하는 쉬운 방법을 제공하여 사전의 기능을 확장합니다. 우리의 경우 두 사전 모두에 대해 Counter 개체를 만든 다음 연산자를 사용하여 이를 결합합니다. 결과는 일치하는 키의 개수가 누적되는 새로운 Counter 개체입니다. Counter 객체를 다시 사전으로 변환하면 원하는 결합 사전이 제공됩니다.

위 내용은 공통 키에 대한 값을 합산하여 두 개의 사전을 Python 방식으로 결합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.