파이썬에서 데이터를 저장하는 방법 중 두 가지 중요한 자료 구조가 딕셔너리(Dictionary) 와 세트(Set) 입니다.

• 딕셔너리: 키(key)와 값(value) 쌍으로 데이터를 저장하는 구조
• 세트: 중복을 허용하지 않는 데이터 집합
이번 글에서는 딕셔너리와 세트의 기본 개념, 주요 기능 및 활용법을 살펴보겠습니다.
딕셔너리(Dictionary)란?
딕셔너리는 키(Key)와 값(Value)을 연결하여 데이터를 저장하는 자료구조입니다.
파이썬에서 딕셔너리는 변경 가능하고, 키를 이용해 값을 빠르게 조회할 수 있는 특징이 있습니다.
📌 딕셔너리 생성 방법
# 키와 값의 쌍으로 저장
person = {
"이름": "홍길동",
"나이": 25,
"직업": "개발자"
}
print(person)
출력 결과
{'이름': '홍길동', '나이': 25, '직업': '개발자'}
✅ 딕셔너리는 {} (중괄호)로 감싸고, "키": 값 형태로 저장
딕셔너리 주요 기능
🔹 값 조회하기 ([], get())
print(person["이름"]) # 홍길동
print(person.get("직업")) # 개발자
✅ get()을 사용하면 키가 없을 경우 None을 반환하여 오류 방지 가능
🔹 새로운 키-값 추가하기
person["국적"] = "대한민국"
print(person)
출력 결과
{'이름': '홍길동', '나이': 25, '직업': '개발자', '국적': '대한민국'}
🔹 값 수정하기
person["나이"] = 30
print(person)🔹 키-값 삭제하기 (del)
del person["직업"]
print(person)
🔹 모든 키-값 가져오기 (keys(), values(), items())
print(person.keys()) # 모든 키 출력
print(person.values()) # 모든 값 출력
print(person.items()) # (키, 값) 튜플 형태 출력세트(Set)란?
세트(Set)는 중복을 허용하지 않고, 순서가 없는 자료형입니다.
즉, 같은 값이 여러 번 저장되지 않으며, 저장된 순서가 유지되지 않습니다.
📌 세트 생성 방법
fruits = {"사과", "바나나", "체리"}
numbers = {1, 2, 3, 4, 5}
✅ {} (중괄호) 안에 값을 넣어 생성
세트 주요 기능
🔹 중복 제거하기
numbers = {1, 2, 2, 3, 3, 4, 4, 5}
print(numbers) # {1, 2, 3, 4, 5}
✅ 같은 값이 여러 번 저장되지 않음
🔹 값 추가하기 (add)
fruits.add("포도")
print(fruits)🔹 값 삭제하기 (remove, discard)
fruits.remove("바나나") # 존재하지 않는 값 삭제 시 오류 발생
fruits.discard("포도") # 존재하지 않아도 오류 없음
print(fruits)
🔹 세트 연산 (합집합, 교집합, 차집합)
A = {1, 2, 3, 4, 5}
B = {3, 4, 5, 6, 7}
print(A | B) # 합집합 {1, 2, 3, 4, 5, 6, 7}
print(A & B) # 교집합 {3, 4, 5}
print(A - B) # 차집합 {1, 2}딕셔너리와 세트 비교
| 비교항목 | 딕셔너리(Dictionary) | 세트(Set) |
| 저장방식 | 키-값(Key-Value) 쌍 | 값(Value)만 저장 |
| 데이터 중복 | 키는 중복 불가, 값은 중복 가능 | 모든 값 중복 불가 |
| 순서 유지 | 순서 보장 (Python 3.7+) | 순서 없음 |
| 주요 기능 | 빠른 데이터 검색 | 집합 연산(합집합, 교집합 등) |
실전 예제
🔹 학생 점수 관리 (딕셔너리 활용)
scores = {
"철수": 85,
"영희": 90,
"민수": 78
}
# 특정 학생 점수 출력
print(scores["영희"]) # 90
# 새로운 학생 추가
scores["지수"] = 88
# 점수 수정
scores["철수"] = 95
print(scores)
🔹 리스트에서 중복 제거 (세트 활용)
numbers = [1, 2, 2, 3, 3, 4, 4, 5]
unique_numbers = list(set(numbers))
print(unique_numbers) # [1, 2, 3, 4, 5]🔹 두 집단에서 공통 친구 찾기 (세트 활용)
friends_A = {"철수", "영희", "민수", "지수"}
friends_B = {"민수", "지수", "유진", "서준"}
common_friends = friends_A & friends_B
print(common_friends) # {'민수', '지수'}마무리 및 요약
✅ 딕셔너리(Dictionary) 는 키-값 쌍으로 데이터를 저장하며, 검색 속도가 빠름
✅ 세트(Set) 는 중복을 허용하지 않는 집합 자료형
✅ 딕셔너리는 데이터 저장 및 검색에 강점
✅ 세트는 중복 제거 및 집합 연산에 유용
다음 글에서는 파일 입출력과 예외 처리에 대해 알아보겠습니다!
#파이썬 #Python #프로그래밍 #코딩기초 #파이썬배우기 #딕셔너리 #세트 #자료구조 #코딩공부 #개발자 #PythonTips #코딩연습 #IT학습 #Python3
'IT - 프로그래밍 > 파이썬' 카테고리의 다른 글
| 파이썬 배우기: 재귀 함수 활용하기 (0) | 2025.02.27 |
|---|---|
| 파이썬 배우기: 익명 함수(lambda 함수) (0) | 2025.02.26 |
| 파이썬 배우기: 위치 인수와 키워드 인수 활용하기 (0) | 2025.02.20 |
| 파이썬 배우기: 예외 처리(try-except) 하는 방법 (0) | 2025.02.19 |
| 파이썬 배우기: 파일 입출력 알아보기 (0) | 2025.02.18 |