본문 바로가기

P-Language/Python

[4일차] 딕셔너리 자료형

딕셔너리 : Key 와 Value라는 것을 한 쌍으로 갖는 자료형
리스트나 튜플형처럼 순차적으로 해당 요소값을 구하지 않고, Key를 통해 Value를 얻는다.

# 딕셔너리 기본형
{Key1:Value1,Key2:Value2,Key3:Value3 …}
dic = {‘name’:’pey’,’phone’:’01100004333’,’birth’:’1118’}
a = {1:’hi’}
a = {‘a’:[1,2,3]}

딕셔너리 쌍 추가,삭제하기
- 딕셔너리는 순서를 따지지 않는다.
- ‘무엇이 추가되었는가’ 가 중요함

# 딕셔너리 쌍 추가
a = {1:’a’}
a[2] = ‘b’ <- {2:’b’}쌍 추가

{2:’b’,1:’a’}

a[‘name’] =‘pey’
{name:’pey’,2:’b’,1:’a’}

a[3]=[1,2,3]
{3:[1,2,3],nane:’pey’,2:’b’,1:’a’}

# 딕셔너리 요소 삭제
del a[1] <-Key가 1인 요소를 삭제

{3:[1,2,3],nane:’pey’,2:’b’}

딕셔너리를 사용하는 방법

# 딕셔너리에서 Key사용해 Value 얻기
grade = {‘pey’:10,’julliet’:99}
grade[‘pey’] <-Key가 ‘pey’인 딕셔너리의 value를 반환
10
grade[‘julliet’]
99

딕셔너리 만들 때 주의사항
- Key는 고유한 값이므로 중복되는 Key값을 설정해 놓으면 하나를 제외한 나머지 것들이 모두 무시된다.
- 어떤것이 무시될지는 예측할 수 없다.
- Key에 리스트는 쓸 수 없으나, 튜플은 쓸 수 있다. Key가 변하는 값인지, 변하지 않는 값인지에 달려있음
- Key에 리스트를 설정하면 TypeError가 발생

딕셔너리 관련 함수

# Key리스트 만들기 Keys
딕셔너리a의 Key만을 모아서 dict_keys라는 객체를 리턴함.

a = {‘name’:’pey’,’phone’:’01199933323’,’birth’:’1118’}
a.keys()
dict_keys([‘name’,’phone’,’birth’])

# Value리스트 만들기 values
a.values()
dict_values([‘pey’,’01199933323’,’1118’])

# Key, Value 쌍 얻기 items
a.itmes()
dict_items([(‘name’:’pey’),(‘phone’:’0119933323’),(‘birth’:’1118’)])

# Key:Value 쌍 모두 지우기 clear - 딕셔너리 안의 모든 요소를 삭제함.  빈 딕셔너리를 {}로 표현
a.clear()
{}

# Key로 Value얻기 get
a.get(‘name’)
‘pey’

# a[‘nokey’] , get(‘nokey’)의 차이점
a[‘nokey’]는 keyerror를 발생
get(‘nokey’)는 None을 리턴

# 딕셔너리 안에 찾으려는 Key 값이 없을 경우, 디폴트 값을 대신 가져옴
a.get(‘foo’:’bar’)
‘bar’

# 해당 Key가 딕셔너리 안에 있는지 조사하기 in
‘name’ in a
True

‘email’ in a
False

'P-Language > Python' 카테고리의 다른 글

[6일차] 자료형의 참과 거짓  (0) 2022.05.28
[5일차] 집합 자료형  (0) 2022.05.27
[3일차] 튜플 자료형  (0) 2022.05.25
[2일차] 리스트 자료형  (0) 2022.05.24
[1일차] 문자열 자료형  (0) 2022.05.23