Programming/Python

[Python] 딕셔너리 dictionary

당닝 2021. 7. 11. 20:48
728x90

딕셔너리(dictionary): key-value 쌍으로 데이터를 저장하는 자료구조

 

딕셔너리 = {key : value}

딕셔너리 = {key1:value1, key2:value2, key3:value3, key4:value4}

key를 이용해 value에 접근이 가능하다. (key 값은 중복이 될 수 없다.)

 

1. 딕셔너리 생성

# 딕셔너리 생성
d = { 'key1' : 1 }

 

2. 값 추가

# 값 추가
d['key2'] = 2
d['key3'] = 'value3'
d[4] = 4
d[(5,6)] = 'value 5 and 6' #튜플 키
d['key7'] = (7, 8) #튜플 값

 

3. 전체 출력, key만 출력, value만 출력, key-value 쌍 출력, key로 value 출력

#전체 출력
print(d)
'''>> {'key1': 1, 'key2': 2, 'key3': 'value3', 4: 4, (5, 6): 'value 5 and 6', 'key7': (7, 8)}'''

#key만 출력 (for문 가능 ex. for k in d.keys())
print(d.keys())
'''>> dict_keys(['key1', 'key2', 'key3', 4, (5, 6), 'key7'])'''

#value만 출력 (for문 가능 ex. for v in d.values())
print(d.values())
'''>> dict_values([1, 2, 'value3', 4, 'value 5 and 6', (7, 8)])'''

#key, value값 쌍 한번에 출력
print(d.items())
'''>> dict_items([('key1', 1), ('key2', 2), ('key3', 'value3'), (4, 4), ((5, 6), 'value 5 and 6'), ('key7', (7, 8))])'''

#key로 value 출력
print(d['key3'])
'''>> value3'''

 

4. 값 수정

# 값 수정
d['key3'] = 3
print(d['key3'])
'''>> 3'''

 

5. 딕셔너리에 해당 key나 value가 존재하는가? - in

# 딕셔너리에 해당 키가 존재하는가? - in
if 'key1' in d:
	print("'key1'이 존재합니다.")
else:
	print("'key1'이 존재하지 않습니다.")
'''>> 'key1'이 존재합니다.'''


# 딕셔너리에 해당 value가 존재하는가?
if 1 in d.values():
	print("1이 존재합니다.")
else:
	print("1이 존재하지 않습니다.")
'''>> 1이 존재합니다.'''

 

6. 딕셔너리 키로 값 얻기 - get

# 딕셔너리 키로 값 얻기 - get
print(d.get('key1'))
'''>> 1'''

print(d.get('key1000')) #[]로 접근 시 에러나지만 get으로 접근 시 None 출력
'''>> None'''

 

7. 딕셔너리에서 키, 값 한쌍 지우기 - del

# 딕셔너리에서 키, 값 한쌍 지우기 - del
del d['key1']
print(d)
'''>> {'key2': 2, 'key3': 3, 4: 4, (5, 6): 'value 5 and 6', 'key7': (7, 8)}'''

 

8. 딕셔너리 키, 값 모두 지우기 - clear

# 딕셔너리 키, 값 모두 지우기 - clear
d.clear()
print(d)
'''>> {}'''
728x90