Language/Python

[Python] 딕셔너리

gartenhh 2021. 8. 9. 17:38

해시 (연관배열)에 해당함

리스트, 튜플과의 차이점: 순서대로 요소를 구하지 않고 key , value의 쌍으로 얻음

딕셔너리 생성

dic = {key1:value1, key2:value2, key3:value3, ...}

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }

정수값 이용가능

value값으로 리스트 이용 가능(key에는 불가능)

tuple은 key로 사용가능

동일한 key가 중복으로 존재하면 1개만 유효

딕셔너리 쌍 추가, 삭제

aa = {1:'kkkkk', 2:'asdfsaf'}

#추가하기
aa['name']='Alex'
aa[10]=[1,3,6,4]

#삭제하기
del aa[2]

key 이용해서 value 얻기

dictionaryName[key]

함수들

keys 리스트 만들기 : keys()

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
clientData.keys()

딕셔너리의 key를 모아서 dict_keys 객체를 리턴한다

value 리스트 만들기 : values()

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
clientData.values()

dict_values 객체 리턴

Key, value 쌍 얻기 : items()

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
clientData.items()

key와 value의 쌍을 튜플로 묶은 값을 돌려줌(dict_items 객체)

key, value 상 모두 제거 : clear()

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
clientData.clear()

key로 Value 값 얻기 : get()

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
clientData.get('id')
clientData.get('number')

dictionaryName[key]을 이용하는 것과 동일한 결과 리턴

단, 존재하지 않는 키가 주어진다면 오류를 발생시키지 않고 None을 리턴

특정 key가 딕셔너리에 있는지 조사 : in

clientData = {'id':'asdf', 'number':'20211202', 'server':'Asia' }
'name' in clientData
'lastConnected' in clientData

keyName in dictionaryName와 같이 사용 True/False를 리턴해준다