본문 바로가기
[Language] - Python

# 11. [Tip] dictionary merge

by Bebsae 2021. 4. 14.

이번 포스트에서는 딕셔너리를 병합하는 방법에 대해 다뤄보고자 한다. 리스트 자료형같은 경우에는 extned() 메소드를 사용하여 확장할 수 있다. 마찬가지로 딕셔너리도 방법이 존재한다. 우선 이 포스트를 보기 이전에 가변 인자에 대한 개념이 부족하다면 dev-ryuon.tistory.com/4?category=908968 를 먼저 참고하는 것을 추천한다.

 

먼저 mutable한 방법부터 살펴본다.

d1.update(d2)
print(d1)

>>
{'a': 1, 'b': 5, 'c': 3, 'd': 4}

딕셔너리 클래스의 update() 메소드를 사용하면 d1 딕셔너리 인스턴스에 d2 딕셔너리 인스턴스의 내용이 덮어쓰인 것을 확인할 수 있다. 다음으로는 immutable한 방법을 살펴보겠다.

 

d1 = {'a': 1, 'b': 2}
d2 = {'b': 5, 'c': 3, 'd': 4}
d3 = dict(d1, **d2)
print(d3)


>>
{'a': 1, 'b': 5, 'c': 3, 'd': 4}

dict 생성자의 인자로 d1과 **d2를 넘겼다. d1 딕셔너리에 d2 딕셔너리가 덮어쓰여진 것을 확인할 수 있다.

댓글