곰퓨타의 SW 이야기

[python] dictionary 사용법 뿌시기 본문

TIL/코테개념_python

[python] dictionary 사용법 뿌시기

곰퓨타 2021. 1. 6. 20:19

파이썬 걸음마를 하면서 dictionary를 사용하는 경우가 많다는 것을 알 수 있었다.🙆‍♀️

 

그래서 가장 이해하기 쉬운 점프투 파이썬을 참고하며 dictionary를 뿌셔보고자 한다.

 

(점프투 파이썬 주소는 이것이다!!) wikidocs.net/16#key-value-items

위키독스

온라인 책을 제작 공유하는 플랫폼 서비스

wikidocs.net

 

 

1. 딕셔너리란 ??

대응관계를 나타낼 수 있는 자료형으로,  연관 배열 혹은 해시라고 한다. 

"people"이라는 단어에 "사람" 이라는 뜻이 연결되는 것과 같이 "key"-"value"가 한쌍으로 부합되는 것이다. 

이는 리스트나 튜플처럼 순차적으로 요소값을 구하는 것이 아닌, key를 통해 바로 value를 얻을 수 있다.

 

2. 딕셔너리 생성 방법

>>> dic = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
>>> a = { 'a': [1,2,3]}

>>> b = dict()
# 빈 dictionary 생성법1

>>> b = {}
# 빈 dictionary 생성법2

 

3. 딕셔너리 쌍 추가, 삭제하기

# 딕셔너리 추가 방법1 
>>> a = {1: 'a'}

# 딕셔너리 추가 방법2
>>> a[2] = 'b'
>>> a
{1: 'a', 2: 'b'}
>>> a[3] = [1,2,3]
>>> a
{1: 'a', 2: 'b', 'name': 'pey', 3: [1, 2, 3]}


# 딕셔너리 삭제 방법
# 1의 key를 가진 data를 삭제하는 방법
>>> del a[1]
>>> a
{2: 'b', 'name': 'pey', 3: [1, 2, 3]}

 

 

4. 딕셔너리 사용법

딕셔너리 이름과 특기의 한쌍이 있다고 가정해보자.

{"김연아":"피겨스케이팅", "류현진":"야구", "박지성":"축구", "귀도":"파이썬"}

 

1 ) 딕셔너리에서 key를 통해 value얻기

-- 리스트는 key로 불가능하다!

-- 중복된 key는 피하자!

# key를 통한 value 얻는 방법 1
# 없는 key로 value를 얻으려 하면 key 오류를 발생시킨다.
>>> grade = {'pey': 10, 'julliet': 99}
>>> grade['pey']
10
>>> grade['julliet']
99



# key를 통한 value 얻는 방법 2
# 없는 key로 value를 얻으려 하면 None을 돌려준다.
>>> a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
>>> a.get('name')
'pey'
>>> a.get('phone')
'0119993323'

 

2) 해당 key가 딕셔너리 안에 있는지 조사하기(in)

>>> a = {'name':'pey', 'phone':'0119993323', 'birth': '1118'}
>>> 'name' in a
True
>>> 'email' in a
False

 

3) key 리스트 만들기 (keys)

>>> a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
>>> a.keys()
dict_keys(['name', 'phone', 'birth'])

# list 처럼 활용하고 싶은 경우
>>> b = list(a.keys())

 

4) value 리스트 만들기 (values)

-- key와 비슷하다

>>> a.values()
dict_values(['pey', '0119993323', '1118'])

 

5) key, value 쌍 얻기 (items)

>>> a.items()
dict_items([('name', 'pey'), ('phone', '0119993323'), ('birth', '1118')])

 

6) key:value 쌍 모두 지우기 (clear)

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

 

 

 

앞으로 딕셔너리 사용하는 경우가 있다면 열심히 활용해봐야겠다⭐️😊

 

Comments