참고 자료
https://docs.python.org/3/library/stdtypes.html
파이썬 버전 3.7 기준
파이썬 자료형 및 연산자(6)
매핑형
매핑개체는 해시 가능 값을 임의의 객체에 대응한다. 바꿔말하면, 해시가능한 값과 그외 임의의 객체의 짝을 형성한다.
파이썬에서 제공하는 매핑개체는 딕셔너리(dictionary)만 존재한다.
딕셔너리(dictionary)
○ 딕셔너리는 key와 value의 쌍으로 정의될 수 있다.
▷ {key: value} 형태로 정의할 수 있다.
○ 딕셔너리에서 key는 반드시 해시 가능하여야한다.
▷ 해시 가능하지 않은 객체인 리스트, 또 다른 딕셔너리, 기타 다른 가변형은 키로 사용할 수 없다.
▷ 딕셔너리 key에는 숫자를 사용할 수는 있고 float형태와 int형태가 서로 교환하여 사용할 수 있으나, float형태(예를들어, 1.0)는 부동소수점 숫자를 근사값으로 저장하기 때문에 사용할때 주의해야한다.
○ 딕셔너리의 생성은 다음과 같은 방법으로 수행할 수 있다.
▷ 생성자 이용: a = dict(one=1, two=2, three=3)
: a = dict(zip('one', 'two', 'three'], [1,2,3]))
: a = dict([('one', 1), ('two', 2), ('three', 3)])
: a = dict({'one': 1, 'two': 2, 'three': 3})
▷ 중괄호 이용: a = {'one': 1, 'two': 2, 'three': 3}
▷ 위의 예제에서 key: value의 짝만 제대초 맞춰진다면 순서는 크게 상관이 없다. 즉, {'one': 1, 'two': 2, 'three': 3}과 {'three': 3, 'two': 2, 'one': 1}은 동일하다.
딕셔너리(dictionary) 연산자/메서드
연산자/메서드 |
사용 예 |
의미 |
비고 |
len() |
len(d) |
딕셔너리 d에 있는 항목의 수를 반환한다. |
|
[ ] |
d[key] |
딕셔너리 d의 key에 있는 항목을 반환한다. key가 없는 경우 에러를 일으킨다. |
|
= |
d[key]= value |
d[key]에 value를 배정한다. key가 존재 하지 않을 경우 새로운 key/value쌍을 배정한다. |
|
del | del d[key] | d[key]를 삭제한다. key가 존재하지 않는 경우 에러를 일으킨다. | |
in |
key in d |
딕셔너리 d에 key가 존재하면 True를 반환한다. |
|
not in |
key not in d not key in d |
딕셔너리 d에 key가 존재하지 않으면 True를 반환한다. |
|
iter() |
iter(d) iter(d.keys()) |
딕셔너리 d의 key에 대한 이터레이터를 반환한다. |
|
clear() |
d.clear() |
딕셔너리 d에 모든 항목을 제거한다. |
|
copy() |
d.copy() |
딕셔너리 d에 얕은 복사를 반환한다. |
|
fromkeys() |
d.fromkeys(sep[, value]) |
딕셔너리 d를 sep을 key로 가지는 딕셔너리를 반환한다. value값이 입력될 경우 각 키에 value값이 같이 입력된다. d는 기존에 존재하는 딕셔너리여야한다. |
|
get() | d.get(key[, default]) | 딕셔너리 d에서 key에 해당하는 값(value)를 반환하며, key가 없을 경우 default를 반환한다. 대괄호와 결과는 거의 같지만, 이 메서드는 에러를 일으키지 않는다. | |
items() | d.items() | 딕셔너리 d의 항목들(key, value의 쌍)의 내용을 반환한다. | ※ |
keys() | d.keys() | 딕셔너리 d의 key를 전부 반환한다. | ※ |
pop() | d.pop(key[, default]) | 딕셔너리 d의 key에 배정되어있는그 항목을 삭제하고 그 항목을 반환(출력)한다. key가 존재하지 않으면 default를 출력한다. | |
popitem() | d.popitem() | 딕셔너리 d에 key와 value쌍을 삭제하고 반환(출력)한다. 딕셔너리 d가 비어있으면 default를 출력한다. | |
setdefault() | d.setdefault(key[, default]) | 딕셔너리 d에 key가 있으면 해당 값(value)를 반환하며, 없는 경우는 default 값을 갖는 key를 삽입후 default를 삽입 및 반환한다. default의 기본값은 None이다. | |
update() | d.update(one=1, two=2, ...) | other에서 제공하는, key/value쌍으로 딕셔너리 d를 갱신한다. 기존 키가 있을경우 덮어쓰기가 된다. 다른 딕셔너리 개체를 입력하는 것도 가능하다. | |
values() | d.values() | 딕셔너리 d에서 value들을 전부 반환한다. | ※ |
※ keys(), values(), items()는 "딕셔너리 뷰 개체"를 반환한다. 이런 개체에 대해서는 len(), iter(), in과 같은 메서드를 사용하는 것이 가능하다.
'Python > 파이썬 기초' 카테고리의 다른 글
자료형과 관련된 내장함수 - 파이썬 기초(9) (0) | 2018.12.02 |
---|---|
이터레이터형과 제너레이터형 - 파이썬 기초(8) (0) | 2018.11.18 |
집합형(set, frozenset)과 관련 함수/메서드 - 파이썬 기초(6) (0) | 2018.11.18 |
문자열형(string)과 관련 함수/메서드 - 파이썬 기초(5) (0) | 2018.11.12 |
시퀀스형(리스트, 튜플, 레인지)과 관련 함수/메서드 - 파이썬 기초(4) (0) | 2018.11.11 |
댓글