[Python] 사전(Dictionary)
작성:    
업데이트:
카테고리: Python Youtube
사전(dictionary)
- 단어, 단어에 대한 정의
- key, key에 해당하는 value
- key에 대한 중복이 허용되지 않음
- 중괄호 {key:value} 로 표현
1. 활용
cabinet = {3:"유재석", 100:"김태호"}
print(cabinet[3]) # 3번 key는 '유재석'이 가지므로 출력값 : 유재석
print(cabinet[100]) # 출력값 : 김태호
print(cabinet.get(3)) # .get() : 자료형에서 해당 key의 값(value)을 가져오는 함수
2. key가 할당되지 않는 경우 [] vs .get()
cabinet = {3:"유재석", 100:"김태호"}
print(cabinet[5]) # key가 없기 때문에 KeyError 발생, 이후 프로그램 종료
print("HI") # 프로그램이 종료되어 출력되지 않음
print(cabinet.get(5)) # key가 없기 때문에 None 발생, 이후 프로그램 진행
print("HI") # 프로그램이 계속 진행되어 HI 출력
3. .get() 이후 없는 key에서 None 발생 대신 다른 문구를 쓰고 싶을 때
cabinet = {3:"유재석", 100:"김태호"}
print(cabinet.get(5, "사용 가능"))
4. 사전 자료형에서 자료 있는지 확인
- key in variable
cabinet = {3:"유재석", 100:"김태호"}
print(3 in cabinet) # 출력값 : True
print(5 in cabinet) # 출력값 : False
5. 문자열 key
- key는 문자열도 가능
cabinet = {"A-3":"유재석", "B-100":"김태호"}
print(cabinet["A-3"])
print(cabinet["B-100"])
6. 기존 key의 value 입력/변경
- 새 손님(조세호)이 온 경우
- C-20 key에 값이 있든 없든 ‘조세호’ 라는 value 등록
cabinet = {"A-3":"유재석", "B-100":"김태호"}
cabinet["A-3"] = "김종국"
cabinet["C-20"] = "조세호"
print(cabinet) # 출력값 : {'A-3': '김종국', 'B-100': '김태호', 'C-20': '조세호'}
7. 기존 key의 value 제거
- 손님이 간 경우
- del 함수를 이용하여 key에 해당하는 value 삭제
del cabinet["A-3"]
print(cabinet) # 출력값 : {'B-100': '김태호', 'C-20': '조세호'}
8. key/value 출력
# key들만 출력
print(cabinet.keys())
# 출력값 : dict_keys(['B-100', 'C-20'])
# value들만 출력
print(cabinet.values())
# 출력값 : dict_values(['김태호', '조세호'])
# key, value 쌍으로 출력
print(cabinet.items())
# 출력값 : dict_items([('B-100', '김태호'), ('C-20', '조세호')])
9. clear
# 목욕탕 폐점
cabinet.clear()
print(cabinet) # 출력값 : {}
댓글남기기