Tech Blog of Pinomaker
Published 2022. 6. 12. 11:14
[Python] 딕셔너리 Language/Python

딕셔너리란?

딕셔너리는 키와 값이 한 쌍이 되어 나열된 시퀀스를 의미한다.

 

car = {"A" : "소나타", "B" : "그랜저, "C" : "재네시스"}

 

빈 딕셔너리 생성 및 항목 추가와 참조

user = {} 이런 식으로 빈 중괄호를 열어 빈 딕셔너리를 생성 할 수 있다.

 

user["1" ] = "PINO" 이런 식으로 딕셔너리에 항목을 추가 할 수 있다.

 

user = {}
user["1"] = "PINO"
print(user["1"])

# >>> PINO

 

딕셔너리의 키 값은 수정 불가능한 객체로 사용해야한다.

딕셔너리 키는 수정 불가능한 객체는 모두 가능하다.

따라서 정수, 실수, 튜플도 이용이 가능하며, 리스트는 불가능하다.

 

딕셔너리 항목의 순회

딕셔너리 항목을 순회하기 위해서는 keys()와 values(), items()를 이용한다.

# dict()를 이용한 딕셔너리 생성
days = dict(월 = "monday", 화 = "tuesday", 수 = "wednesday")
print(days) # {"월" : "monday", "화" : "tuesday", "수" : "wednesday"}

# keys()는 딕셔너리의 키로 구성된 리스트를 반환하다.
print(days.keys()) # dict_keys(["월", "화", "수"])

# items()는 딕셔너리의 키와 값으로 이뤄진 튜플이 들어간 리스트 반환
print(days.items()) # dict_items([("월", "monday"), ("화", "tuesday"), ("수", "wednesday")])

# values()는 딕셔너리의 값으로 구성된 리스트를 반환한다.
print(days.values()) # dict_values(["monday", "tuesday", "wednesday"])

 

딕셔너리 항목의 참조와 삭제

days의 딕셔너리를 생성한다.

days = dict(월 = "monday", 화 = "tuesday", 수 = "wednesday")
print(days) # {"월" : "monday", "화" : "tuesday", "수" : "wednesday"}

 

get(key)는  키를 입력 받아서 값을 반환한다.

# get(key)은 딕셔너리의 키를 입력 받아 값을 반환한다.
print(days.get("월")) # monday

 

pop(key)는 키를 입력  받아 값을 제거하고, 제거 되는 값을 반환한다.

# pop(key)는 딕셔너리의 키를 입력 받아 값을 제거하고 제거되는 값을 반환한다.
print(days.pop("월")) # monday
print(days) # {"화" : "tuesday", "수" : "wednesday"}

#만약에 key 값이 없는 분기 처리를 하고 싶다면 pop(key, (키가 없을 때 출력할 값))
print(days.pop("목", "없습니다.") # 없습니다.

 

popitem()은 임의의 (키, 값) 튜플을 반환하고 딕셔너리에서 삭제한다.

# popitem() 임의의 (키, 값) 튜플을 반환하고 딕셔너리에서 삭제한다.
print(days.popitem()) # ("수", "wednesday")

 

del은 항목 삭제와 전체 삭제를,  clear()는 전체 삭제가 가능하다. 

# 딕셔너리 생성
days2 = dict(월 = "monday", 화 = "tuesday", 수 = "wednesday")

# del를 이용한 삭제
del days1["화"]
print(days1) # {"월" : "monday", "수" : "wednesday"}

#clear()를 이용한 배열 비우기
days1.clear()
print(days1) # {}

# del를 이용한 변수  삭제
del days(1)
print(days1) #Error 찾을 수 없다.

 

update()는 딕셔너리 결합을 해주는 메소드다.

a = {1 : "철수", 2 : "영희", 3 : "짱구"}
b = {3 : "맹구", 4 : "훈이"} # 중복 되는 키가 있으면 Value가 덮어짐

a.update(b) 
print(a) # {1: '철수', 2: '영희', 3: '맹구', 4: '훈이'}

 

in을 이용한 키 값 검사

a = {1 : "철수", 2 : "영희", 3 : "짱구"}

print(1 in a) # true

'Language > Python' 카테고리의 다른 글

[Python] 람다 함수  (0) 2022.06.12
[Python] 함수  (0) 2022.06.12
[Python] 리스트(2)  (0) 2022.06.06
[Python] 리스트(1)  (0) 2022.06.06
[Python] requests와 json을 이용한 http 통신하기.  (0) 2022.06.04
profile

Tech Blog of Pinomaker

@pinomaker

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!