본문 바로가기

프로그래밍/[Python] 파이썬

[Python] 딕셔너리 합치기 및 추가 방법 - 파이썬 필수 문법

by GenieIT* 2024. 9. 1.

728x90
728x90

 

파이썬 데이터 타입 중 딕셔너리 타입의 합치기와 추가 방법 및 주의사항을 정리해 보았습니다.

  • 딕셔너리 타입 추가
  • 딕셔너리 타입 합치기

 

 

1. 딕셔너리 타입 추가 방법

# 직접 추가 방법
dict1 = {}

dict1['a'] = 1
dict1['b'] = 2
dict1['c'] = 3

print(dict1) # {'a': 1, 'b': 2, 'c': 3}
# setdefault 메서드 활용
dict1 = {}

dict1.setdefault('a', 1)
dict1.setdefault('b', 2)
dict1.setdefault('c', 3)

print(dict1) # {'a': 1, 'b': 2, 'c': 3}

♣ 주의사항!!

중복되는 키의 value 값 변경을 위해 직접 추가 방법과 setdefault 메서드를 같이 쓰고 싶은 경우에는 setdefault를 먼저 사용하고 직접 추가 및 변경 방식을 뒤에 써야 원하는 값을 추출 할 수 있다. setdefault 메서드를 나중에 쓰는 경우에는 값 변경을 할 수 없으므로 주의해야 한다!

dict1 = {}

dict1['a'] = 1
dict1['b'] = 2
dict1['c'] = 3
dict1.setdefault('a', 10)
dict1.setdefault('b', 20)
dict1.setdefault('c', 30)

print(dict1) # {'a': 1, 'b': 2, 'c': 3}
dict1 = {}

dict1.setdefault('a', 1)
dict1.setdefault('b', 2)
dict1.setdefault('c', 3)
dict1['a'] = 10
dict1['b'] = 20
dict1['c'] = 30

print(dict1) # {'a': 10, 'b': 20, 'c': 30}

 

 

2. 딕셔너리 타입 합치는 방법

update 메서드 : 중복된 키값이 존재하면 값 갱신 처리, 없으면 신규 추가 처리하는 메서드

# update 메서드 활용
dict1 = {'a':1, 'b':2, 'c':3}
dict2 = {'c':2, 'd':4}

dict1.update(dict2)
print(dict1) # {'a': 1, 'b': 2, 'c': 2, 'd': 4}

 

* 가장 앞에 오는 딕셔너리를 기준으로 두번째 딕셔너리를 덮어 쓰고 그 상태에서 세번째 딕셔너리를 덮어쓴다고 생각하면 된다. 순차적으로 덮어쓰는 구조이다. 

dict1 = {'a':1, 'b':2, 'c':3}
dict2 = {'c':2, 'd':4}
dict3 = {'a':3, 'e':5}

print(dict(dict2, **dict1)) # {'c': 3, 'd': 4, 'a': 1, 'b': 2}

print(dict(dict1, **dict2)) # {'a': 1, 'b': 2, 'c': 2, 'd': 4}

print(dict(dict1, **dict2, **dict3)) # {'a': 3, 'b': 2, 'c': 2, 'd': 4, 'e': 5}

 

 

 

728x90