Python

딕셔너리

jsys 2024. 1. 6. 13:07

 

- 구성

키(key)와 값(value)이 항상 쌍으로 구성됨

 

 

- 특징

* 리스트나 튜플은 인덱스를 이용해 항목을 다루나, 딕셔너리는 인덱스 대신 키를 이용해 값을 다룸

* 리스트나 튜플에서 인덱스는 0부터 시작하는 숫자이지만, 딕셔너리의 키는 임의로 지정한 숫자나 문자열이 될 수 있고 값으로는 어떤 데이터 타입도 사용 가능

 

* 딕셔너리 만들기

     딕셔너리 데이터 전체를 중괄호({})로 감싼다.

     키와 값의 구분은 콜론(:)으로 한다.

     키와 값으로 이뤄진 각 쌍은 콤마(,)로 구분한다.

country_capital = {
    "대한민국" : "서울",
    "프랑스" : "파리",
    "미국" : "워싱턴",
    "영국" : "런던"
}

country_capital   # key:value


{'대한민국': '서울', '프랑스': '파리', '미국': '워싱턴', '영국': '런던'}
# 딕셔너리에서 value 값을 key 값 통해서 조회 가능
country_capital['대한민국']


# '서울'

 

 

 

* 딕셔너리 데이터 타입 예시

data = {1:'버스', 3:'비행기'}
data[1]  # 숫자 1은 리스트, 문자열, tuple 인덱스 번호와는 다른 숫자
         # 현재 여기에서 숫자 1은 key 값임


# '버스'
data3 = {'list1' : [1,2,3], 'list2' : [4,5,6], 1 : '테스트', 2 : 100}
data3


# {'list1': [1, 2, 3], 'list2': [4, 5, 6], 1: '테스트', 2: 100}
# 리스트, 문자 등 여러 형태가 섞여서 존재 가능

 

 

 

 

 

- 딕셔너리 value값 수정하는 법

 

* 변겅

country_capital = {"대한민국" : "서울","프랑스" : "파리","미국" : "워싱턴","영국" : "런던"}
country_capital['대한민국'] = '부산'
country_capital


# {'대한민국': '부산', '프랑스': '파리', '미국': '워싱턴'}

 

 

* 삭제

del country_capital['영국']
country_capital


# {'대한민국': '부산', '프랑스': '파리', '미국': '워싱턴'}

 

 

* 추가

country_capital['일본'] = '도쿄'
country_capital


# {'대한민국': '부산', '프랑스': '파리', '미국': '워싱턴', '일본': '도쿄'}

 

 

 

 

 

- 딕셔너리 메서드

 

딕셔너리 메서드 설명 사용 예
keys() 딕셔너리에서 키 전체를 리스트 형태로 반환 dict_data.keys()
values() 딕셔너리에서 값 전체를 리스트 형태로 반환 dict_data.values()
items() 딕셔너리에서 키와 값의 쌍을 튜플 형태로 반환 dict_data.items()
update(dict_data2) 딕셔너리에 딕셔너리 데이터(‘dict_data2’) 추가 dict_data.update(dict_data2)
clear() 딕셔너리의 모든 항목 삭제 dict_data.clear()

 

 

* keys()

country_capital = {"대한민국" : "서울", "프랑스" : "파리", "미국" : "워싱턴", "영국" : "런던"}
country_capital.keys()


# dict_keys(['대한민국', '프랑스', '미국', '영국'])

 

 

다만 이는 리스트 '형태'일 뿐 리스트는 아니다

print(type(country_capital.keys()))


# <class 'dict_keys'>

 

 

데이터 형변환을 하면 리스트로 변환할 수 있다

# 데이터 형변환(리스트로 변환 : 수정,삭제 가능해짐)
list(country_capital.keys())


# ['대한민국', '프랑스', '미국', '영국']

 

 

 

* values()

country_capital.values()


# dict_values(['서울', '파리', '워싱턴', '런던'])

 

 

 

* items()

country_capital.items()


# dict_items([('대한민국', '서울'), ('프랑스', '파리'), ('미국', '워싱턴'), ('영국', '런던')])

 

 

 

* update()

new_df = {
    '중국' : '베이징', '필리핀' : '마닐라', '호주' : '캔버라'
}
country_capital.update(new_df)
country_capital


# {'대한민국': '서울','프랑스': '파리','미국': '워싱턴','영국': '런던','중국': '베이징','필리핀': '마닐라','호주': '캔버라'}

 

 

 

* clear()

country_capital.clear()  # 빈 Dictionary 생성
country_capital


# {}

 

 

 

 

 

'Python' 카테고리의 다른 글

Numpy 배열 생성 정리  (0) 2024.01.06
반복문  (0) 2024.01.06
리스트 함수 메서드 정리  (0) 2024.01.06
문자열 함수 메서드 정리  (1) 2024.01.06
리스트, 튜플의 유사한 점 및 차이점  (0) 2024.01.05