딕셔너리(Dictionary)
- 파이썬 딕셔너리는 리스트와 유사
- 항목의 순서를 따지지 않음
- Key, Value 형식
- Key는 대부분 문자열 or 불변하는 타입 가능(Bool, 정수, 부동소수점수, 튜플, 문자열..)
- 변경 가능함, 추가, 삭제, 수정 가능
- Java의 HashMap과 유사
생성 : {}
중괄호({}) 안에 콤마(:)로 구분된 키:값 쌍을 지정.
empty_dict = {}
test_dict = {
"hobby": "soccer",
"description": "I'm a good boy!"
}
딕셔너리로 변환하기 : dict()
두 값으로 이루어진 시퀀스를 딕셔너리로 변환 가능
list = [['a', 'b'], ['c', 'd'], ['e', 'f']]
dict(list)
결과
{'c':'d', 'a':'b', 'e':'f'}
키 순서는 임의적, 순서 보장 안함
항목 추가/변경하기
키에 참조되는 항목에 값을 할당하면 됨.
- 이미 존재 -> 새 값으로 교체
- 존재하지 않음 -> 새 키값이 추가
dic = {
'messi': 'barca',
'son': 'tottenham',
'ronaldo': 'realmadrid',
'iniesta': 'barca'
}
dic['messi'] = 'manchester united'
>>> {..., 'messi': 'manchester united', ...}
딕셔너리 결합 : update()
키와 값을 복사해서 다른 딕셔너리에 붙인다.
dic = {
'a': 'b',
'cc': 'd'
}
dic2 = {
'gender': 'male',
'a': 'c'
}
dic.update(dic2)
>>> {'a':'c', 'gender':'male', 'cc':'d'}
키값이 같은 경우 update 매개변수인 두번째 딕셔너리 값으로 바뀐다.
항목 삭제 : del
del dic['a']
>>> {'gender':'male', 'cc':'d'}
모든 항목 삭제
dic.clear()
dic = {}
키가 존재하는지 알아보기
'a' in dic
>>> true or false
항목 얻기
dic['a']
# 키가 존재하지 않으면 예외됨
dic['zxczxcv']
>>> ..keyError....
# get()으로 항목 얻기
# a가 없으면 None 출력됨
dic.get('a')
# 키가 존재하지 않으면 Default값 설정 가능
dic.get('zxzxzxz', 'not found')
모든 키 얻기 : keys()
dic.keys()
>>> dict_keys(['a','ccc'])
# 리스트로 변환 해야함
a = list(dic.keys())
a[0]
>>> 'a'
모든 값 얻기 : values()
모든 쌍의 Key, Value 얻기 : items()
list(dic.items())
>>> [('a','b'), ...] # 각 키밸류는 튜플로 반환됨
할당, 복사 : copy()
aa = dic.copy()
aa['a'] = 'apple';
# aa와 dic는 별개로, aa의 a만 apple로 바뀜
'Programming > Python' 카테고리의 다른 글
Python 튜플(tuple) 정의하는 방법 (0) | 2023.05.15 |
---|---|
파이썬(Python) 으로 피파온라인 유저랭킹 크롤링하기! (1) (0) | 2020.06.05 |
파이썬(Python) 배열, 리스트(List) (2) | 2016.06.29 |
[파이썬(Python) 실습] 반복문 사용하기 (for문, range, while문) (0) | 2015.08.10 |
[파이썬(Python) 실습] 입력과 출력 (RGB값 16진수로 변환) (0) | 2015.08.04 |
댓글