파이썬3 딕셔너리 기초 개념

딕셔너리의 기본 구조

딕셔너리는 키와 값으로 구성된 순서 없는 가변 컬렉션입니다. 파이썬에서는 중괄호 {}로 정의하며, 각 항목은 키: 값 형태로 표현됩니다.

car_info = {
    "manufacturer": "Porsche",
    "model": "911",
    "production_year": 1963
}
print(car_info)
# 출력 결과: {'manufacturer': 'Porsche', 'model': '911', 'production_year': 1963}

값 접근 방법

키 이름을 사용하여 특정 값을 가져올 수 있습니다. 두 가지 주요 방식이 있습니다.

# 방법 1: 대괄호 사용
value_1 = car_info["model"]

# 방법 2: get() 메서드 사용
value_2 = car_info.get("model")

값 수정

기존 키에 새로운 값을 할당하면 해당 항목이 업데이트됩니다.

car_info["production_year"] = 2019
print(car_info)
# 출력 결과: {'manufacturer': 'Porsche', 'model': '911', 'production_year': 2019}

반복 처리

딕셔너리를 반복할 때는 키 또는 값만 추출하거나, 둘 다 함께 처리할 수 있습니다.

# 모든 키 출력
for key in car_info:
    print(key)

# 모든 값 출력
for value in car_info.values():
    print(value)

# 키와 값 동시 반복
for k, v in car_info.items():
    print(k, v)

키 존재 여부 확인

특정 키가 딕셔너리 내에 있는지 확인하려면 in 연산자를 사용합니다.

if "model" in car_info:
    print("모델 정보가 존재합니다.")

항목 수 확인

len() 함수를 통해 딕셔너리의 항목 개수를 확인할 수 있습니다.

print(len(car_info))  # 출력: 3

새 항목 추가

새 키를 지정하고 값을 할당하면 자동으로 추가됩니다.

car_info["color"] = "red"
print(car_info)

항목 제거

여러 가지 메서드로 항목을 삭제할 수 있습니다.

# 특정 키 삭제 (pop)
car_info.pop("color")

# 마지막 삽입 항목 삭제 (popitem)
car_info.popitem()

# del 키워드로 특정 항목 삭제
del car_info["model"]

# 전체 딕셔너리 삭제
del car_info

# clear()로 내용 비우기
car_info.clear()

디크셔너리 복제

얕은 복사가 필요할 경우 copy() 또는 dict() 함수를 사용하세요.

original = {"a": 1, "b": 2}
copy_1 = original.copy()
copy_2 = dict(original)

중첩 딕셔너리

딕셔너리 안에 다른 딕셔너리가 포함될 수 있으며, 이를 중첩 구조라 합니다.

family = {
    "child_1": {"name": "Phoebe Adele", "birth_year": 2002},
    "child_2": {"name": "Jennifer Katharine", "birth_year": 1996},
    "child_3": {"name": "Rory John", "birth_year": 1999}
}

dict() 생성자 사용

생성자 문법을 이용해 딕셔너리를 만들 수도 있습니다.

data = dict(manufacturer="Porsche", model="911", year=1963)
print(data)
# 출력: {'manufacturer': 'Porsche', 'model': '911', 'year': 1963}

주요 메서드 요약

메서드설명
clear()모든 항목 삭제
copy()딥 코피 생성
get(key)키에 대한 값 반환
items()키-값 쌍의 리스트 반환
keys()키 목록 반환
values()값 목록 반환
pop(key)지정된 키 삭제 및 반환
popitem()마지막 항목 삭제
update(other_dict)다른 딕셔너리의 항목 병합
setdefault(key, default)키가 없으면 기본값 설정

태그: python dictionary Data Structure key-value dict methods

6월 30일 22:50에 게시됨