Python 딕셔너리

딕셔너리(Dictionary)

딕셔너리는 비정렬, 변경 가능하고 인덱싱 가능한 집합입니다. 파이썬에서 딕셔너리는 괄호로 작성되며 키와 값을 가집니다.

예제

딕셔너리 생성 및 출력:

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
print(thisdict)

실행 예제

항목 접근

딕셔너리의 항목에 접근하려면 키 이름을 중괄호로 인용할 수 있습니다:

예제

"model" 키의 값을 가져옵니다:

x = thisdict["model"]

실행 예제

이름이 get() 의 방법은 동일한 결과를 줍니다:

예제

"model" 키의 값을 가져옵니다:

x = thisdict.get("model")

실행 예제

값 변경

특정 항목의 값을 변경하려면 키 이름을 인용할 수 있습니다:

예제

"year"를 2019으로 변경합니다:

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
thisdict["year"] = 2019

실행 예제

딕셔너리 순회

다음을 사용하여 for 딕셔너리를 순회합니다.

딕셔너리를 순회하면서, 반환되는 값은 딕셔너리의 키이지만, 값을 반환하는 방법도 있습니다.

예제

딕셔너리의 모든 키 이름을 각각 출력합니다:

for x in thisdict:
  print(x)

실행 예제

예제

딕셔너리의 모든 값을 각각 출력합니다:

for x in thisdict:
  print(thisdict[x])

실행 예제

예제

다음을 사용할 수 있습니다: values() 이 함수는 딕셔너리의 값을 반환합니다:

for x in thisdict.values():
  print(x)

실행 예제

예제

items() 함수를 사용하여 키와 값을 순회합니다:

for x, y in thisdict.items():
  print(x, y)

실행 예제

키 존재 확인

지정된 키가 딕셔너리에 존재하는지 확인하려면 다음을 사용하십시오: in 키워드:

예제

"model"가 딕셔너리에 존재하는지 확인합니다:

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
if "model" in thisdict:
  print("Yes, 'model' is one of the keys in the thisdict dictionary")

실행 예제

딕셔너리 길이

딕셔너리에 있는 항목(키-값 쌍)의 수를 확인하려면 다음을 사용하십시오: len() 메서드.

예제

딕셔너리에 있는 항목 수를 출력합니다:

print(len(thisdict))

실행 예제

항목 추가

새로운 인덱스 키를 사용하여 값을 할당하여 항목을 딕셔너리에 추가할 수 있습니다:

예제

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
thisdict["color"] = "red"
print(thisdict)

실행 예제

항목 제거

딕셔너리에서 항목을 제거하는 방법이 몇 가지 있습니다:

예제

pop() 메서드는 지정된 키 이름을 가진 항목을 제거합니다:

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
thisdict.pop("model")
print(thisdict)

실행 예제

예제

popitem() 최근 추가된 항목을 제거하는 방법(3.7 이전 버전에서는 무작위 항목을 제거):

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
thisdict.popitem()
print(thisdict)

실행 예제

예제

키워드로 지정된 키 이름을 가진 항목을 제거합니다: 关键字删除具有指定键名的项目:

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
thisdict.popitem()
print(thisdict)

실행 예제

예제

키워드로 지정된 키 이름을 가진 항목을 제거합니다: del thisdict["model"]

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
del
키워드로 딕셔너리를 완전히 제거합니다:

실행 예제

예제

clear() del thisdict

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
print(thisdict) #this 会导致错误,因为 "thisdict" 不再存在。
print(thisdict)

실행 예제

키워드로 딕셔너리를 비우습니다:

thisdict.clear() 를 통해 딕셔너리를 복제할 수 없습니다 dict2 = dict1에 대한 변경 사항은 자동으로 를 복제하는 것입니다. 왜냐하면: 의 참조에 반영됩니다. 그리고 는 단순히 의 참조에 반영됩니다. 그리고 dict1 에 대한 변경 사항은 자동으로 dict2

중에서 copy()복제를 생성하는 또 다른 방법은 내장 메서드를 사용하는 것입니다

예제

copy() 복제를 수행할 수 있는 몇 가지 방법이 있습니다. 하나의 방법은 내장 딕셔너리 메서드를 사용하는 것입니다

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
메서드를 사용하여 딕셔너리를 복제합니다:
mydict = dict(thisdict)

실행 예제

mydict = thisdict.copy() dict()복제를 생성하는 또 다른 방법은 내장 메서드를 사용하는 것입니다

예제

dict() 사용

메서드는 딕셔너리 복제를 생성합니다:
  thisdict =	{
  "brand": "Porsche",
  "model": "911",
"child3" : child3
"year": 1963
mydict = dict(thisdict)

실행 예제

print(mydict)

중첩 딕셔너리

예제

딕셔너리는 많은 딕셔너리를 포함할 수 있으며, 이를 중첩 딕셔너리라고 합니다。

"year" : 1999
  세 개의 딕셔너리를 포함하는 딕셔너리를 생성합니다:
    child1 = {
    "name" : "Phoebe Adele",
  "child2" : {
  "child1" : {
    child2 = {
    "name" : "Jennifer Katharine",
  "child2" : {
  },
    child3 = {
    "name" : "Rory John",
  "child3" : child3
"child3" : child3

실행 예제

"child3" : {

예제

또는, 세 개의 딕셔너리가 이미 딕셔너리로 존재하는 경우 내장 딕셔너리를 사용하여 중첩된 딕셔너리를 생성합니다:

세 개의 딕셔너리를 생성한 후, 다른 세 개의 딕셔너리를 포함하는 딕셔너리를 생성합니다:
  child1 = {
  "name" : "Phoebe Adele",
"child3" : child3
"year" : 2002
  child2 = {
  "name" : "Jennifer Katharine",
"child3" : child3
"year" : 1996
  child3 = {
  "name" : "Rory John",
"child3" : child3
"year" : 1999
  myfamily = {
  "child1" : child1,
  "child2" : child2,
"child3" : child3

실행 예제

}

dict() 구조 함수를 사용할 수도 있습니다 dict() 구조 함수는 새 딕셔너리를 생성합니다:

예제

thisdict = dict(brand="Porsche", model="911", year=1963)
# 키워드는 문자열 표면량이 아닙니다
# 주의하세요, 등호 대신冒号를 사용했습니다
print(thisdict)

실행 예제

딕셔너리 메서드

Python은 딕셔너리에서 사용할 수 있는 내장 메서드의 집합을 제공합니다.

메서드 설명
clear() 딕셔너리의 모든 요소를 제거
copy() 딕셔너리의 복사본을 반환
fromkeys() 지정된 키와 값을 가진 딕셔너리를 반환
get() 지정된 키의 값을 반환
items() 각 키/값 쌍을 포함한 튜플의 목록을 반환
keys() 딕셔너리의 키를 포함한 목록을 반환
pop() 지정된 키를 가진 요소를 제거
popitem() 마지막으로 삽입된 키/값 쌍을 제거
setdefault() 지정된 키의 값을 반환합니다. 해당 키가 존재하지 않으면, 지정된 값을 가진 키를 삽입합니다.
update() 지정된 키/값 쌍을 사용하여 딕셔너리를 업데이트
values() 사전에 모든 값의 목록을 반환