파이썬 - 딕셔너리(Dictionary)

김소희·2024년 7월 5일

파이썬

목록 보기
17/17

딕셔너리(Dictionary)

키-값 쌍이란?

Python 딕셔너리에서 키와 값은 키-값 쌍을 형성하는 두 가지 주요 구성 요소입니다.

키(key)

  • 키는 딕셔너리에 저장된 해당 값을 참조하는 데 사용되는 고유 식별자입니다.
  • 키는 일반적으로 문자열이나 숫자이지만 튜플(불변 요소만 포함)과 같은 다른 불변 데이터 유형일 수도 있습니다.
  • 딕셔너리의 각 키는 고유해야 합니다. 기존 키에 새 값을 할당하면 이전 값이 대체됩니다.

값(value)

  • 값은 딕셔너리의 해당 키와 관련된 데이터입니다.
  • 값은 문자열, 숫자, 목록, 튜플 또는 기타 딕셔너리과 같은 모든 데이터 유형이 될 수 있습니다.
  • 값은 딕셔너리에서 중복될 수 있습니다. 여러 키가 동일한 값을 가질 수 있습니다.

예시

person = {
	"name": "Alice",     
    "age": 30,     
    "city": "New York",    
    "job": "Software Engineer"}

이 예에서 키는 "name", "age", "city" 및 "job"이고 값은 "Alice", 30, "New York" 및 "Software Engineer"입니다.

딕셔너리(Dictionary)

Python 딕셔너리는 각 키가 고유해야 하는 키-값 쌍의 변경 가능하고 정렬되지 않은 모음입니다. 딕셔너리는 다른 프로그래밍 언어에서 연관 배열, 해시 맵 또는 해시 테이블이라고도 합니다. 이들은 Python에서 해시 테이블로 구현되어 키를 기반으로 요소에 대한 빠른 액세스, 삽입 및 삭제를 제공합니다.

Python 딕셔너리을 선언하려면 중괄호 {}를 사용하고 콜론을 사용하여 키-값 쌍을 구분합니다. 특정 키와 관련된 값에 액세스하려면 대괄호 []를 사용할 수 있습니다. 예를 들면 다음과 같습니다.예를 들면 다음과 같습니다.

# Declare a 딕셔너리 
book = {     
  "title": "The Catcher in the Rye",     
  "author": "J.D. Salinger",     
  "year": 1951,     
  "genre": "Fiction" } 

# Accessing a value by key print(book["title"])  
# Output: The Catcher in the Rye

이 예에서 book 딕셔너리에는 "title", "author", "year" 및 "genre"라는 4개의 키-값 쌍이 있습니다. 키와 관련된 값에 액세스하려면 print() 명령문에 표시된 대로 대괄호 []와 키를 사용해야합니다.

1. 딕셔너리 생성

# 딕셔너리 생성
person = {    
  "name": "John",    
  "age": 30,    
  "city": 
  "New York"}

# 키를 이용한 값 접근
print(person["name"])  
# Output: John

2. 요소 추가 또는 업데이트

person["country"] = "USA"  
# 새로운 키-값 쌍 추가

person["age"] = 31        
# "age" 키에 연결된 값을 업데이트

3. 키-값 쌍 제거

del person["age"] 
# "age" 키에 연결된 키-값 쌍 삭제

4. 딕셔너리에 키가 존재하는지 확인


if "name" in person:    
	print("딕셔너리에 'name' 키가 존재합니다.")

5. 딕셔너리 반복

#1
# 키를 이용한 반복(iterate)
for key in person:    
	print(key)
    
# 키를 이용한 반복2
m = {"1월" : 31,
     "2월" : 28,
     "3월" : 31}

print(list(m.values()))
# 결과
# 1월 2월 3월
#2
# 값에 대한 반복(iterate)
for value in person.values():    
	print(value)

# 값에 대한 반복2
m = {"1월" : 31,
     "2월" : 28,
     "3월" : 31}
     
print(list(m.values()))     
for v in m.values():
  print(v)
  
#결과
#31 28 31
#3
# 키-값 쌍에 대한 반복(iterate)
for key, value in person.items():    
	print(f"{key}: {value}")

#키-값 쌍에 대한 반복2
m = {"1월" : 31,
     "2월" : 28,
     "3월" : 31}
     
for key, val in m.items():
  print("{} {}일".format(key,val))

#결과
#1월 31일
#2월 28일
#3월 31일

0개의 댓글