1. 딕셔너리(Dictionary)
키(Key)와 값(Value)을 이용해 자료를 관리
dic = {'key1':'item1', 'key2':'item2', 'key3':'item3',----}
key와 value에는 컨테이너 자료형도 올 수 있음
단, key값은 immutable값만 올 수 있음 ex) 상수, tuple 등
2. 딕셔너리 조회
1) key를 이용해 value 조회 가능
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
print(datas['k1'])
print(datas['k2'])
print(datas['k3'])
print(datas['k4'])
#result
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
i1
i2
i3
i4
2) dic.get(key)을 이용해 조회 가능
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
print(datas.get('k1'))
print(datas.get('k5'))
#result
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
i1
None
3. 딕셔너리 추가, 변경
dic[key] = item 형태로 추가 및 변경
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
datas['k5']='i5'
datas['k1']='i1-1'
print(datas)
#result
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
{'k1': 'i1-1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4', 'k5': 'i5'}
4. keys()와 values()
1) dic.keys() : key값 반환, 리스트와 비슷한 dict_keys 타입
2) dic.values() : value값 반환, 리스트와 비슷한 dict_values 타입
3) dic.items() : key와 value가 튜플로 결합된 값으로 반환, 리스트와 비슷한 dict_items 타입
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
print(datas.keys())
print(datas.values())
print(datas.items())
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
dict_keys(['k1', 'k2', 'k3', 'k4'])
dict_values(['i1', 'i2', 'i3', 'i4
dict_items([('k1', 'i1'), ('k2', 'i2'), ('k3', 'i3'), ('k4', 'i4')])
5. 딕셔너리 삭제
1) del dic[key] : 해당 키의 아이템 삭제
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
del datas['k1']
print(datas)
#result
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
{'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
2) dic.pop(key) : 해당 키의 아이템 삭제하고 해당값을 반환
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print(datas)
rValue = datas.pop('k1')
print(datas)
print(rValue)
#value
{'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
{'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
i1
6. 딕셔너리 기타 기능
1) in, not in : 키(Key) 존재 유/무 판단
datas = {'k1':'i1','k2':'i2','k3':'i3','k4':'i4'}
print('datas : {}'.format(datas))
print('k1 in datas : {}'.format('k1' in datas))
print('k1 in datas : {}'.format('k1' not in datas))
#result
datas : {'k1': 'i1', 'k2': 'i2', 'k3': 'i3', 'k4': 'i4'}
k1 in datas : True
k1 in datas : False
2) len(dic) : 딕셔너리 길이(아이템 개수) 출력
3) dic.clear() : 딕셔너리 내의 모든 아이템 삭제