박미미의 지식에서 쌓는 즐거움

파이썬:: 사전(Dictionary)의 개념 본문

IT 공부/파이썬 공부

파이썬:: 사전(Dictionary)의 개념

낑깡좋아 2019. 7. 10. 00:27

파이썬 사전(Dictionary)

Key와 Value를 가진 집합. (자바에서 해쉬맵의 개념인듯)

- Key에는 변하지 않는 값을 사용하고, Value에는 변하는 값과 변하지 않는 값 모두 사용할 수 있다.

- Key로 값을 찾기때문에 순서를 갖지 않는다.


* 딕셔너리 형태

      {Key1:Value1, Key2:Value2, Key3:Value3, ...} 


* 사용 용도
 키를 통한 빠른 검색이 필요할 때 사용한다. 


* 딕셔너리 예

ex. 과일의 색을 저장하고 싶다면??

>>> dic = {'apple':'red', 'banana':'yellow', 'cherry': 'red'}


위에서 Key는 각각 'apple', 'banana', 'cherry'이고, 각각의 Key에 해당하는 Value는 'red', 'yellow', 'red'이 된다.

keyvalue
applered
bananayellow
cherryred


* 실습


>>> color={"apple":"red", "banana":"yellow"}

>>> color

{'apple': 'red', 'banana': 'yellow'}

>>>

>>>

>>> type(color) #타입확인

<class 'dict'>

>>> color["apple"]

'red'

>>>

>>>

>>> color["cherry"]

Traceback (most recent call last):

  File "<pyshell#163>", line 1, in <module>

    color["cherry"]

KeyError: 'cherry'   #없는 key를 조회하면 에러

>>> color["cherry"] = "red"    #키,값 추가

>>> color

{'apple': 'red', 'banana': 'yellow', 'cherry': 'red'}

>>>

>>> del color["cherry"]    #키 삭제

>>>

>>> color

{'apple': 'red', 'banana': 'yellow'}

>>>

>>> color.clear()    #딕셔너리 전체삭제 

>>> color

{}

>>>

>>> import collections

>>> d = collections.OrderedDict()

>>> d["x]=100

 

SyntaxError: EOL while scanning string literal

>>> d["x"]=100

>>> d["y"]=200

>>>

>>> d

OrderedDict([('x', 100), ('y', 200)])

>>>

>>> device={"아이폰":10, "안드로이드":20, "윈도우":30}

>>> len(device)

3

>>>

>>>

>>> for item in device.items():  #for문 이용하여 딕셔너리 출력

print(item)

 

 

('아이폰', 10)

('안드로이드', 20)

('윈도우', 30)


>>>

>>>

>>>

>>> for k,v in device.items():

print(k,v)

 

 

아이폰 10

안드로이드 20

윈도우 30

 


* 해당 key가 딕셔너리 안에 있는지 확인






* 출처: 파이썬 오프라인강의, https://wikidocs.net/16


Comments