dict는 연결 매핑 또는 사전을 나타내는 기본 제공 유형입니다. 사전은 d[k]
를 사용한 색싱과 k in d
를 사용한 키 멤버십 테스트를 지원합니다. 두 작업 모두 일정한 시간이 걸립니다. 고정 해제된 사전은 변경 가능하며 d[k]
에 할당하거나 특정 메서드를 호출하여 업데이트할 수 있습니다. 사전은 반복 가능합니다. 반복하면 삽입 순서대로 키 시퀀스가 생성됩니다. 기존 키와 연결된 값을 업데이트해도 반복 순서에는 영향을 미치지 않지만 키를 삭제한 후 다시 삽입하면 영향을 미칩니다.
d = {0: "x", 2: "z", 1: "y"} [k for k in d] # [0, 2, 1] d.pop(2) d[0], d[2] = "a", "b" 0 in d, "a" in d # (True, False) [(k, v) for k, v in d.items()] # [(0, "a"), (1, "y"), (2, "b")]
사전을 구성하는 방법에는 네 가지가 있습니다.
- 사전 표현식
{k: v, ...}
는 표현식에 표시되는 순서대로 삽입된 지정된 키/값 항목이 있는 새 사전을 생성합니다. 두 키 표현식이 동일한 값을 생성하면 평가가 실패합니다. - 딕셔너리 컴프리헨션
{k: v for vars in seq}
은 각 키/값 쌍이 루프 반복 순서로 삽입되는 새 딕셔너리를 생성합니다. 중복이 허용됩니다. 지정된 키의 첫 번째 삽입이 시퀀스에서의 위치를 결정하고 마지막 삽입이 연결된 값을 결정합니다.{k: v for k, v in (("a", 0), ("b", 1), ("a", 2))} # {"a": 2, "b": 1} {i: 2*i for i in range(3)} # {0: 0, 1: 2, 2: 4}
- 내장 dict 함수를 호출하면 지정된 항목이 포함된 사전이 반환됩니다. 항목은 인수 순서대로 삽입되며, 이름이 지정된 인수보다 위치 인수가 먼저 삽입됩니다. 컴프리헨션과 마찬가지로 중복 키가 허용됩니다.
- 결합 표현식
x | y
는 두 기존 사전을 결합하여 새 사전을 생성합니다. 두 사전에 공통된 키k
가 있는 경우 오른쪽 사전의 키 값 (즉,y[k]
)이 우선합니다. 통합 연산자의|=
변형은 사전을 제자리에서 수정합니다. 예:d = {"foo": "FOO", "bar": "BAR"} | {"foo": "FOO2", "baz": "BAZ"} # d == {"foo": "FOO2", "bar": "BAR", "baz": "BAZ"} d = {"a": 1, "b": 2} d |= {"b": 3, "c": 4} # d == {"a": 1, "b": 3, "c": 4}
회원
지우기
None
dict.clear()
get
unknown dict.get(key, default=None)
key
이 사전에 있으면 key
의 값을 반환하고 그렇지 않으면 default
를 반환합니다. default
가 제공되지 않으면 None
이 기본값으로 사용되므로 이 메서드에서 오류가 발생하지 않습니다.
매개변수
매개변수 | 설명 |
---|---|
key
|
required 찾을 키입니다. |
default
|
기본값은 None 입니다.키를 찾을 수 없는 경우 사용할 기본값 (None 대신)입니다. |
항목
list dict.items()
{2: "a", 4: "b", 1: "c"}.items() == [(2, "a"), (4, "b"), (1, "c")]
키
list dict.keys()
{2: "a", 4: "b", 1: "c"}.keys() == [2, 4, 1]
팝
unknown dict.pop(key, default=unbound)
key
을 삭제하고 연결된 값을 반환합니다. 해당 키가 있는 항목이 없으면 아무것도 삭제하지 않고 지정된 default
값을 반환합니다. 기본값이 지정되지 않은 경우 대신 실패합니다.
매개변수
매개변수 | 설명 |
---|---|
key
|
required 키입니다. |
default
|
기본값은 키가 없는 경우의 기본값인 unbound 입니다. |
popitem
tuple dict.popitem()
(key, value)
쌍을 삭제하고 반환합니다. popitem
는 집합 알고리즘에서 자주 사용되는 것처럼 사전을 파괴적으로 반복하는 데 유용합니다. 사전이 비어 있으면 popitem
호출이 실패합니다.
setdefault
unknown dict.setdefault(key, default=None)
key
이 사전에 있으면 값을 반환합니다. 그렇지 않으면 값이 default
인 키를 삽입하고 default
를 반환합니다. default
기본값은 None
입니다.
매개변수
매개변수 | 설명 |
---|---|
key
|
required 키입니다. |
default
|
기본값은 키가 없는 경우의 기본값인 None 입니다. |
update
None
dict.update(pairs=[], **kwargs)
pairs
로, 다음으로 선택적 키워드 인수로 사전을 업데이트합니다. 위치 인수가 있는 경우 dict, iterable 또는 None이어야 합니다.
사전인 경우 키-값 쌍이 이 사전에 삽입됩니다. 반복 가능한 경우 삽입할 키/값 쌍으로 처리되는 쌍 (또는 길이가 2인 기타 반복 가능 항목)의 시퀀스를 제공해야 합니다.
각 키워드 인수 name=value
는 이름/값 쌍이 이 dict에 삽입되도록 합니다.
매개변수
매개변수 | 설명 |
---|---|
pairs
|
기본값은 [] 입니다. 항목의 사전 또는 목록입니다. 항목은 키, 값의 두 요소로 구성된 튜플 또는 목록이어야 합니다. |
kwargs
|
required 추가 항목의 사전입니다. |
값
list dict.values()
{2: "a", 4: "b", 1: "c"}.values() == ["a", "b", "c"]