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

두 개의 Python 사전을 병합하려면 어떻게 해야 합니까?

<시간/>

Python 3.5 이상에서는 ** 연산자를 사용하여 사전을 풀고 다음 구문을 사용하여 여러 사전을 결합할 수 있습니다.

a = {'foo': 125}
b = {'bar': "hello"}
c = {**a, **b}
print(c)

이것은 출력을 줄 것입니다:

{'foo': 125, 'bar': 'hello'}

이전 버전에서는 지원되지 않습니다. 그러나 다음과 유사한 구문을 사용하여 바꿀 수 있습니다.

a = {'foo': 125}
b = {'bar': "hello"}
c = dict(a, **b)
print(c)

이것은 출력을 줄 것입니다:

{'foo': 125, 'bar': 'hello'}

할 수 있는 또 다른 일은 복사 및 업데이트 기능을 사용하여 사전을 병합하는 것입니다. 예를 들어,

def merge_dicts(x, y):
z = x.copy() # start with x's keys and values
z.update(y) # modify z with y's keys and values
return z

a = {'foo': 125}
b = {'bar': "hello"}
c = merge_dicts(a, b)
print(c)

이것은 출력을 줄 것입니다:

{'foo': 125, 'bar': 'hello'}