반응형
🔹 파이썬 딕셔너리(Dictionary) 메서드 정리
파이썬의 딕셔너리(dictionary)는 키(key)와 값(value)의 쌍을 저장하는 자료형으로, 다양한 내장 메서드를 제공합니다. 주요 메서드를 정리하면 다음과 같습니다.
🔹 1. dict.keys()
📌 딕셔너리의 모든 키(key) 반환
my_dict = {"name": "Alice", "age": 25, "city": "Seoul"}
print(my_dict.keys()) # dict_keys(['name', 'age', 'city'])
📌 리스트로 변환
keys_list = list(my_dict.keys())
print(keys_list) # ['name', 'age', 'city']
🔹 2. dict.values()
📌 딕셔너리의 모든 값(value) 반환
print(my_dict.values()) # dict_values(['Alice', 25, 'Seoul'])
📌 리스트로 변환
values_list = list(my_dict.values())
print(values_list) # ['Alice', 25, 'Seoul']
🔹 3. dict.items()
📌 (키, 값) 쌍을 튜플 형태로 반환
print(my_dict.items())
# dict_items([('name', 'Alice'), ('age', 25), ('city', 'Seoul')])
📌 리스트로 변환
items_list = list(my_dict.items())
print(items_list)
# [('name', 'Alice'), ('age', 25), ('city', 'Seoul')]
🔹 4. dict.get(key, default)
📌 키에 해당하는 값을 반환 (없으면 기본값 반환)
print(my_dict.get("name")) # Alice
print(my_dict.get("job", "Not Found")) # Not Found
💡 my_dict["job"]처럼 직접 접근하면 키가 없을 경우 KeyError 발생!
🔹 5. dict.update(dict2)
📌 기존 딕셔너리에 다른 딕셔너리 내용 추가 또는 갱신
my_dict.update({"age": 30, "job": "Developer"})
print(my_dict)
# {'name': 'Alice', 'age': 30, 'city': 'Seoul', 'job': 'Developer'}
🔹 6. dict.pop(key, default)
📌 특정 키를 제거하고 값을 반환 (없으면 기본값 반환)
age = my_dict.pop("age")
print(age) # 30
print(my_dict) # {'name': 'Alice', 'city': 'Seoul', 'job': 'Developer'}
📌 키가 없으면 기본값 반환
print(my_dict.pop("salary", "Not Found")) # Not Found
🔹 7. dict.popitem()
📌 마지막 키-값 쌍을 제거하고 반환 (파이썬 3.7부터는 삽입 순서대로 동작)
item = my_dict.popitem()
print(item) # ('job', 'Developer')
print(my_dict) # {'name': 'Alice', 'city': 'Seoul'}
💡 비어있는 딕셔너리에서 사용하면 KeyError 발생
🔹 8. dict.setdefault(key, default)
📌 특정 키가 없으면 추가하고 기본값 설정
my_dict.setdefault("gender", "Female")
print(my_dict)
# {'name': 'Alice', 'city': 'Seoul', 'gender': 'Female'}
💡 키가 이미 존재하면 기존 값을 반환하고 변경하지 않음
print(my_dict.setdefault("name", "Bob")) # Alice
🔹 9. dict.clear()
📌 모든 요소 삭제
my_dict.clear()
print(my_dict) # {}
🔹 10. dict.copy()
📌 딕셔너리 복사 (얕은 복사)
original = {"a": 1, "b": 2}
copy_dict = original.copy()
print(copy_dict) # {'a': 1, 'b': 2}
🔹 11. dict.fromkeys(iterable, value)
📌 리스트 등의 요소를 키로 하고 동일한 값을 가진 딕셔너리 생성
keys = ["a", "b", "c"]
new_dict = dict.fromkeys(keys, 0)
print(new_dict) # {'a': 0, 'b': 0, 'c': 0}
🔹 딕셔너리 메서드 요약
메서드 설명
keys() | 모든 키 반환 |
values() | 모든 값 반환 |
items() | (키, 값) 쌍 반환 |
get(key, default) | 키에 해당하는 값 반환 (없으면 기본값) |
update(dict2) | 다른 딕셔너리와 병합 및 값 변경 |
pop(key, default) | 특정 키 삭제 후 값 반환 |
popitem() | 마지막 (키, 값) 쌍 삭제 후 반환 |
setdefault(key, default) | 키가 없으면 추가하고 기본값 설정 |
clear() | 모든 요소 삭제 |
copy() | 딕셔너리 복사 (얕은 복사) |
fromkeys(iterable, value) | 키 목록으로 새로운 딕셔너리 생성 |
딕셔너리는 빠른 데이터 조회와 수정이 가능하여 다양한 프로그래밍에서 유용하게 활용됩니다. 😊
'십대를 위한 코딩 > 십대를 위한 파이썬' 카테고리의 다른 글
두 코드(mangling1.py vs mangling2.py)의 차이 (2) | 2025.02.20 |
---|---|
VS Code에서 Python 확장(extension) 설치에 대한 설명 (0) | 2025.02.19 |
딕셔너리의 .items() 메서드는 어떻게 생겼을까? (1) | 2025.02.17 |
객체 모델 다이어그램 설명 (Python 코드 구현) (1) | 2025.02.15 |
파이썬의 내장형 클래스 쉽게 이해하기 (1) | 2025.02.15 |