Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python 딕셔너리 값을 업데이트하는 방법 완벽 가이드

파이썬(Python)의 내장 dict 클래스는 update() 메서드를 제공합니다. 이 메서드는 다른 딕셔너리 객체를 인수로 받아 기존 딕셔너리에 병합하는 역할을 합니다.

기본 문법

D1.update(D2)

동작 방식

update() 메서드가 호출되면 D2 객체의 내용이 D1에 병합됩니다. 이때 다음과 같은 규칙이 적용됩니다.

  • 기존 키가 있는 경우: D2에 이미 D1에 존재하는 키가 포함되어 있다면, 해당 키의 값이 D2의 값으로 업데이트됩니다.
  • 새로운 키인 경우: D2에 D1에 없는 새로운 키가 있다면, 새로운 키-값(key-value) 쌍이 D1에 추가됩니다.

메서드 호출 후 D1은 병합 및 업데이트된 최종 내용을 담게 됩니다.

예제 코드

D1={"pen":25, "pencil":10, "book":100, "sharpner":5, "eraser":5}
D2={"book":200, "scale":10}
D1.update(D2)
print(D1)

출력 결과

{'pen': 25, 'pencil': 10, 'book': 200, 'sharpner': 5, 'eraser': 5, 'scale': 10}

위 예제에서 "book" 키는 두 딕셔너리 모두에 존재하므로 값이 100에서 200으로 변경되었습니다. 반면 "scale" 키는 기존 D1에 없던 새로운 키이므로 딕셔너리 끝에 그대로 추가된 것을 확인할 수 있습니다.

참고: 병합 연산자(|) 활용하기

파이썬 3.9 버전부터는 |(병합) 연산자를 사용해 두 딕셔너리를 합칠 수도 있습니다. 이 방법은 원본 딕셔너리를 수정하지 않고 새로운 딕셔너리를 생성한다는 점이 update()와 다릅니다.

D3 = D1 | D2  # 원본 유지, 병합된 새 딕셔너리 반환