소개
사전은 내장된 Python 데이터 유형입니다. 사전은 키-값 쌍의 시퀀스입니다. 사전은 가변 객체이지만 사전 키는 변경 불가능하며 각 사전 내에서 고유해야 합니다. 내장된 추가 메서드는 없지만 사전에 추가하고 업데이트하는 여러 가지 방법이 있습니다. 이 기사에서는 Python 할당 연산자, update()
메서드, 그리고 사전을 병합하고 업데이트하는 연산자를 사용하여 Python 사전에 추가하고 업데이트하는 방법을 알아봅니다.
GitHub를 통해 Python 애플리케이션을 배포하고 DigitalOcean 앱 플랫폼을 사용하세요. DigitalOcean에 앱의 확장을 맡기세요.
Python 사전에 추가하는 네 가지 방법
=
할당 연산자를 사용하여 Python 사전에 추가하기
새 키를 사전에 추가하려면 =
할당 연산자를 사용할 수 있습니다:
dict[key] = value
키가 이미 사전에 있는 경우 할당 연산자가 값을 업데이트하거나 덮어씁니다.
다음 예제는 새로운 사전을 생성한 다음 할당 연산자 =
를 사용하여 값을 업데이트하고 키-값 쌍을 추가하는 방법을 보여줍니다:
dict_example = {'a': 1, 'b': 2}
print("original dictionary: ", dict_example)
dict_example['a'] = 100 # 기존 키 덮어쓰기
dict_example['c'] = 3 # 새로운 키 추가
dict_example['d'] = 4 # 새로운 키 추가
print("updated dictionary: ", dict_example)
출력은 다음과 같습니다:
Outputoriginal dictionary: {'a': 1, 'b': 2}
updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4}
출력에서 a
의 값이 새 값으로 덮어씌워지고, b
의 값은 변경되지 않았으며, c
와 d
에 대한 새로운 키-값 쌍이 추가되었습니다.
Python 사전에 값 덮어쓰지 않고 추가하기
=
할당 연산자를 사용하면 기존 키의 값을 새 값으로 덮어쓰게 됩니다. 프로그램에 중복 키가 있을 수 있지만 원래 값은 덮어쓰고 싶지 않은 경우에는 if
문을 사용하여 조건부로 값을 추가할 수 있습니다.
이전 섹션에서의 예제를 이어서, if
문을 사용하여 사전에 새로운 키-값 쌍만 추가할 수 있습니다:
dict_example = {'a': 1, 'b': 2}
print("original dictionary: ", dict_example)
dict_example['a'] = 100 # 기존 키, 덮어쓰기
dict_example['c'] = 3 # 새로운 키, 추가
dict_example['d'] = 4 # 새로운 키, 추가
print("updated dictionary: ", dict_example)
# 다음과 같이 if 문 추가
if 'c' not in dict_example.keys():
dict_example['c'] = 300
if 'e' not in dict_example.keys():
dict_example['e'] = 5
print("conditionally updated dictionary: ", dict_example)
출력은 다음과 같습니다:
Outputoriginal dictionary: {'a': 1, 'b': 2}
updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4}
conditionally updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
출력에서 보듯이 if
조건 때문에 사전이 조건적으로 업데이트될 때 c
의 값이 변경되지 않았습니다.
update()
메서드를 사용하여 Python 사전에 추가
당신은 딕셔너리나 키-값 쌍의 이터러블을 딕셔너리에 추가할 수 있습니다. 이를 위해서는 update()
메서드를 사용합니다. update()
메서드는 기존 키의 값을 새로운 값으로 덮어씁니다.
다음 예제는 새로운 딕셔너리를 생성하고, update()
메서드를 사용하여 새로운 키-값 쌍과 새로운 딕셔너리를 추가하고, 각 결과를 출력하는 방법을 보여줍니다:
site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary'}
print("original dictionary: ", site)
# 딕셔너리를 작성하여 작가 키-값 쌍을 업데이트합니다.
site.update({'Author':'Sammy Shark'})
print("updated with Author: ", site)
# 새로운 딕셔너리를 생성합니다.
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
# 원래의 딕셔너리에 새로운 딕셔너리를 업데이트합니다.
site.update(guests)
print("updated with new dictionary: ", site)
출력 결과는 다음과 같습니다:
Outputoriginal dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary'}
updated with Author: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark'}
updated with new dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}
출력 결과에서 첫 번째 업데이트는 새로운 키-값 쌍을 추가하고, 두 번째 업데이트는 guest
딕셔너리의 키-값 쌍을 site
딕셔너리에 추가합니다. 기존 딕셔너리에 있는 키를 업데이트하는 경우, 이전 값은 업데이트에 의해 덮어씌워집니다.
병합 |
연산자를 사용하여 Python 딕셔너리에 추가하기
두 개의 딕셔너리를 병합하고 새로운 딕셔너리 객체를 반환하기 위해 파이썬의 병합 연산자 |
를 사용할 수 있습니다.
다음 예제는 두 개의 사전을 만들고 병합 연산자를 사용하여 양쪽의 키-값 쌍을 포함하는 새로운 사전을 만드는 방법을 보여줍니다:
site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
new_site = site | guests
print("site: ", site)
print("guests: ", guests)
print("new_site: ", new_site)
결과는:
Outputsite: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy'}
guests: {'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}
new_site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}
두 사전이 새로운 사전 객체로 병합되어 양쪽 사전의 키-값 쌍을 포함합니다.
만약 양쪽 사전에 모두 동일한 키가 있다면, 두 번째 사전 또는 오른쪽 피연산자에서 가져온 값이 사용됩니다. 다음 예제 코드에서는 두 사전 모두 b
라는 키가 있는데요:
dict1 = {'a':'one', 'b':'two'}
dict2 = {'b':'letter two', 'c':'letter three'}
dict3 = dict1 | dict2
print{"dict3: ", dict3}
결과는:
Outputdict3: {'a': 'one', 'b': 'letter two', 'c': 'letter three'}
b
키의 값은 오른쪽 피연산자인 dict2
에서 가져온 값으로 덮어씌워집니다.
Update |=
연산자를 사용하여 Python 사전에 추가
파이썬에서는 사전을 주어진 사전이나 값으로 인플레이스로 업데이트하기 위해 파이프와 등호 문자를 사용하는 |=
연산자를 사용할 수 있습니다.
병합 |
연산자와 마찬가지로 두 사전에 모두 동일한 키가 있다면, 업데이트 |=
연산자는 오른쪽 피연산자에서 값을 가져옵니다.
다음 예제는 두 개의 사전을 만들고 업데이트 연산자를 사용하여 두 번째 사전을 첫 번째 사전에 추가하고 업데이트된 사전을 출력하는 방법을 보여줍니다:
site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
site |= guests
print("site: ", site)
결과는:
Outputsite: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}
한국어로 번역합니다.
이전 예제에서는 세 번째 사전 객체를 만들 필요가 없었습니다. 왜냐하면 업데이트 연산자가 원본 객체를 수정하기 때문입니다. 결과에서는 guests
사전이 원래 site
사전에 추가되었음을 보여줍니다.
결론
이 기사에서는 Python 사전에 추가하고 업데이트하는 다양한 방법을 사용했습니다. 더 많은 Python 자습서로 학습을 계속하세요.
Source:
https://www.digitalocean.com/community/tutorials/python-add-to-dictionary