개발(IT)/Python(파이썬)

파이썬(Python) 기본문법 (기본 자료형) #2

isony 2024. 10. 12. 19:55
반응형

파이썬(Python) 기본문법 (기본 자료형) #2

7. 딕셔너리(dict)

1) 딕셔너리(dict) 생성 형식

dict_data = {key1:value1, key2:value2, key3:value3, ..., key_n:value_n}
또는
dict_data = dict(key1=value1, key2=value2, key3=value3, ..., key_n=value_n)

 

dict_ex1 = {1:'사과', 2:'배', 3:'복숭아', 4:'망고', 5:'파인애플'}
dict_ex2 = {1:1234, 3:5678, 5:7890}
dict_ex3 = {True:'맞습니다', False:'아닙니다'}
dict_ex4 = {'10':['영미',24], '20':['서연',25]}

> print(dict_ex1)
{1:'사과', 2:'배', 3:'복숭아', 4:'망고', 5:'파인애플'}
> print(dict_ex2)
{1:1234, 3:5678, 5:7890}
> print(dict_ex3)
{True:'맞습니다', False:'아닙니다'}
> print(dict_ex4)
{'10':['영미',24], '20':['서연',25]}


dict_ex5 = dict(a=10, b=2.0, c='문자', d=True, abc=[1,2,3])

> print(dict_ex5)
{'a':10, 'b':2.0, 'c':'문자', 'd':True, 'abc':[1,2,3]}

 

2) 딕셔너리(dict) 추가, 삭제, 변경하기

dict_data[key]

> print(dict_ex1[1])
사과
> print(dict_ex2[5])
7890
> print(dict_ex3[True])
맞습니다
> print(dict_ex4['20'])
['서연', 25]
> print(dict_ex5['b'])
2.0
dict_data[key] = value

dict_user = {'이름':'서소니', '나이':27}
> print(dict_user)
{'이름':'서소니', '나이':27}

dict_user['나이'] = 25
> print(dict_user)
{'이름':'서소니', '나이':25}

dict_user['취미'] = ['게임', '농구']
> print(dict_user)
{'이름':'서소니', '나이':25, '취미':['게임', '농구']}
del dict_data[key]

dict_user = {'이름':'서소니', '나이':25, '취미':['게임', '농구']}
> print(dict_user)
{'이름':'서소니', '나이':25, '취미':['게임', '농구']}

del dict_user['취미']
> print(dict_user)
{'이름':'서소니', '나이':25}

 

3) 딕셔너리(dict) 존재 여부 확인

key in dict_data


dict_data1 = {'버스':1, '기차':2, '비행기':3, '배':4}

> print('기차' in dict_data1)
True
> print('택시' in dict_data1)
False

 

4) 딕셔너리(dict) 메서드

dict_data.method()
딕셔너리 메서드 설명 예제
keys() 딕셔너리 키 전체를 리스트로 모아 dict_keys 자료형으로 변환 dict_data.keys()
values() 딕셔너리 값 전체를 리스트로 모아 dict_values 자료형으로 변환 dict_data.values()
items() 딕셔너리 키와 값의 쌍을 (키,값) 처럼 튜플로 모아 dict_items 자료형으로 변환 dict_data.items()
update(dict_new) 기존 디셔너리에 새로운 딕셔너리(dict_new)의 키와 값의 쌍을 추가 dict_data.update(dict_new)
get(key_data) 입력값(key_data)이 딕셔너리 키에 있으면 대응하는 값을 반환하고, 없으면 None를 반환 dict_data.get(key_data)
clear() 딕셔너리의 모든 키와 값의 쌍을 모두 삭제하고 빈 딕셔너리가 됨 dict_data.clear()

 

dict_alpha = {0:'a', 1:'b', 2:'c', 3:'d', 4:'e'}

> print(dict_alpha)
{0:'a', 1:'b', 2:'c', 3:'d', 4:'e'}
> print(dict_alpha.keys())
dict_keys([0, 1, 2, 3, 4])
> print(dict_alpha.values())
dict_values(['a', 'b', 'c', 'd', 'e'])
> print(dict_alpha.items())
dict_values([(0,'a'), (1,'b'), (2,'c'), (3,'d'), (4,'e')])

> print(list(dict_alpha.keys()))
[0, 1, 2, 3, 4]
> print(list(dict_alpha.values()))
['a', 'b', 'c', 'd', 'e']
> print(list(dict_alpha.items()))
[(0,'a'), (1,'b'), (2,'c'), (3,'d'), (4,'e')]


dict_new = {5:'f', 6:'g'}
dict_alpha.update(dict_new)

> print(dict_alpha)
{0:'a', 1:'b', 2:'c', 3:'d', 4:'e', 5:'f', 6:'g'}
> print(dict_alpha.get(1))
b
> print(dict_alpha.get(7))
None
반응형