#딕셔너리
- dict = {Key1:Value1, Key2:Value2, Key3:Value3, ...}
- dict = {'이름':'디카프리오', '나이':'20', '대표작': '타이타닉'}
- dict = { 'a': [1,2,3]} #--> value안에 리스트도 가능.
1. 딕셔너리 쌍 추가하기
>>> a = {1: 'a'}
# 추가하기
>>> a[2] = 'b'
>>> a
{1: 'a', 2: 'b'}
#추가하기
>>> a['name'] = 'pey'
>>> a
{1: 'a', 2: 'b', 'name': 'pey'}
2. 딕셔너리 요소 삭제하기
del a[key]
를 이용해 삭제 # 지정한 key에 해당하는 {key:value}가 삭제
>>> del a[1]
>>> a
{2: 'b', 'name': 'pey', 3: [1, 2, 3]}
>>> grade = {'pey': 10, 'julliet': 99}
>>> grade['pey'] #key이용해
10 # value 얻기
>>> grade['julliet'] # key이용해
99 #value 얻기
1. a.keys()
: 딕셔너리 a의 key만을 모아서 dict_keys객체를 돌려줌. (파이썬 3.0 버전 이후)
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
b = a.keys()
print(b)
#dict_keys객체를 돌려줌. list 아님.
--> dict_keys(['name', 'phone', 'birth'])
# type 확인
print(type(b))
--> <class 'dict_keys'>
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
for i in a.keys():
print(i)
-->
name
phone
birth
list()
로 바꾸기a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
c = list(a.keys())
print(c)
--> ['name', 'phone', 'birth']
2. a.values()
: 딕셔너리 a의 value를 모아 dict_value객체를 돌려줌.
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
a.values()
--> dict_values(['pey', '0119993323', '1118'])
#반복
for i in a.values():
print(i)
-->
pey
0119993323
1118
3. a.items()
: 딕셔너리 a의 key와 value를 쌍으로 튜플로 묶어 dict_items로 돌려줌.
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
a.items()
--> dict_items([('name', 'pey'), ('phone', '0119993323'), ('birth', '1118')])
# 반복
for i in a.items():
print(i)
-->
('name', 'pey')
('phone', '0119993323')
('birth', '1118')
4. a.clear()
: 딕셔너리 안에있는 Key,value 모두 요소 삭제.
5. a.get()
: get함수를 이용해 Key로 value얻기
>>> a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
>>> a.get('name')
'pey'
>>> a.get('phone')
'0119993323'
a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
print(a.get("foo"))
-> none
# foo가 없다면, bar을 반환해라
print(a.get("foo","bar"))
-> bar
6. key in a
: 해당 key가 딕셔너리 안에 있는지 조사하기
>>> a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
>>> 'name' in a
True
>>> 'email' in a
False