본문 바로가기

Language/python

[ Python 자료형 ] Dictionary

반응형

파이썬의 자료형 Dictionary에 대해 점프투파이썬을 보고 개인적으로 정리한 자료

 

  • 딕셔너리는 Key와 Value를 한 쌍으로 갖는 자료형이다.
  • Key 값의 중복을 허용하지 않는다.
  • 순서가 없다(Unordered).

 

dictionaryhan.py
0.00MB

 

1. 딕셔너러 생성하기

dic = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}

display(dic)

{'name': 'pey', 'phone': '0119993323', 'birth': '1118'}

2. 딕셔너러 요소 추가하기

a = {1: 'a'}
a[3] = 'c'
a['name'] = 'pey'

display(a)

{1: 'a', 3: 'c', 'name': 'pey'}

3. 딕셔너러 요소 삭제하기

dic = {2: 'a', 3: 'b', 'name': 'pey', 5: [1, 2, 3]}
del dic[5]

display(dic)

{2: 'a', 3: 'b', 'name': 'pey'}

4. 딕셔너러 Key 사용해 Value 얻기

dic = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}

display(dic['name'])
display(dic['phone'])
display(dic['birth'])

pey
0119993323
1118

5. 딕셔너러 Key 리스트 만들기

 

  • dict_keys, dict_values, dict_items 등은 리스트로 변환하지 않더라도 기본적인 반복(iterate) 구문(예: for문)을 실행할 수 있다.
  • dict_keys 객체는 리스트를 사용하는 것과 차이가 없지만, 리스트 고유의 append, insert, pop, remove, sort 함수는 수행할 수 없다.
  • 반환 값으로 리스트가 필요한 경우에는 list(a.keys())를 사용하면 된다.


a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
b = a.keys()
c = list(a.keys())

display(b)
display(type(b))
display(c)
display(type(c))

 

dict_keys(['name', 'phone', 'birth'])
<class 'dict_keys'>
['name', 'phone', 'birth']
<class 'list'>

6. 딕셔너러 Value 리스트 만들기

a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
b = a.values()

display(b)

dict_values(['pey', '0119993323', '1118'])

7. 딕셔너러 쌍튜플 리스트 만들기

a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
b = a.items()

display(b)

dict_items([('name', 'pey'), ('phone', '0119993323'), ('birth', '1118')])

8. Key: Value 쌍 모두 지우기(clear)


a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
a.clear()

display(a)

{}

9. Key로 Value얻기(get)

 

  • a.get('name')은 a['name']을 사용했을 때와 동일한 결과값을 돌려받는다.
  • a['nokey']처럼 존재하지 않는 키(nokey)로 값을 가져오려고 할 경우 a['nokey']는 Key 오류를 발생시키고 a.get('nokey')는 None을 돌려준다는 차이가 있다.

a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}

display(a.get('name'))

pey

10. Key가 딕셔너리안에 있는지 조사하기

a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
b = 'name' in a
c = 'email' in a

display(b)
display(c)

True
False
반응형

'Language > python' 카테고리의 다른 글

[ Python 자료형 ] Dataframe 관리  (0) 2019.12.08
[ Python 자료형 ] 집합(Set) 관리  (0) 2019.12.08
[ Python 자료형 ] Tuple  (0) 2019.12.08
[ Python 자료형 ] 문자열 관리  (0) 2019.12.06
[ Python 자료형 ] LIST 관리  (0) 2019.12.06