카테고리 없음

3. 파이썬 자료구조 딕셔너리

터렛짓는다 2021. 2. 22. 14:21

딕셔너리는 Key와 Value를 한 쌍으로 갖는 자료형이다. 예를 들어 Key가 축구공 이라면 Value는 축구가 되는 것ㅇ디ㅏ.

딕셔너리는 리스트나 튜플처럼 순차적으로 해당 요솟값을 구하지 않고 Key를 통해 Value를 얻는다.

 

다음은 딕셔너리의 예제이다.

{Key1:Value1, Key2:Value2, Key3:Value3, ...}
>>>dic = {'name':'hanhyung', 'phone':'01011111111'}

Key와 Value의 쌍 여러 개가 { }로 둘러싸여 있다. 각각의 요소는 Key : Value 형태이고 쉼표로 구분되어 있다.

위에서 Key는 각각 name, phone이고 Value는 hanhyung, 01011111111 이다.

 

-딕셔너리 쌍 추가하기

>>> a = {1 : 'a'}
>>> a[2] = 'b'
>>> a
{1: 'a', 2: 'b'}
>>> a['name'] = 'hanhyung'
>>> a
{1 :'a', 2 : 'b', 'name' : 'hanhyung'}
>>> a[3] = [1, 2, 3]
{1 :'a', 2 : 'b', 'name' : 'hanhyung', 3 : [1, 2, 3]}

-딕셔너리 요소 삭제하기

>>> del a[1]
>>> a
{2 : 'b', 'name' : 'hanhyung', 3 : [1, 2, 3]}

-딕셔너리 주의점

Key는 고유값이므로 중복되는 Key 값을 설정할 경우 하나를 제외한 나머지 것들이 모두 무시된다.

 

딕셔너리 관련 함수들

-Key 리스트 만들기(keys)

>>> a = {'name' : 'hanhyung', 'phone' : '01011111111'}
>>> a.keys()
dict_keys(['name', 'phone'])
>>> list(a.keys())		#dict_keys의 객체를 리스트로 변환
['name', 'phone']

-Value 리스트 만들기(values)

>>> a.values()
dict_values(['hanhyung', '01011111111'])

-Key, Value 쌍 얻기(items)

>>> a.items()
dict_items([('name', 'hanhyung'), ('phone', '01011111111')])

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

>>> a.clear()
>>> a
{}

-Key로 Value 얻기(get)

>>> a = {'name' : 'hanhyung', 'phone' : '01011111111'}
>>> a.get('name')
'hanhyung'

-Key가 딕셔너리 안에 있는지 조사(in)

>>> 'name' in a
True
>>> 'birth' in a
False