파이썬에는 여러 데이터를 효율적으로 관리할 수 있는 구조가 있어요.
그중 딕셔너리(Dictionary)와 집합(Set)은
데이터를 유용하게 정리하고 빠르게 찾을 수 있는 방법을 제공합니다.
이번 글에서는 딕셔너리와 집합의 차이와 활용법을 살펴보며,
간단한 예제 프로그램까지 만들어볼 거예요.
■ 딕셔너리(Dictionary)의 구조와 활용
딕셔너리는 Key-Value(키-값) 쌍으로 데이터를 저장하는 자료구조입니다.
키를 사용해 빠르게 값을 찾을 수 있기 때문에,
전화번호부나 회원 정보처럼 고유한 키를 가지고 있는 데이터를 다룰 때 유용해요.
# 딕셔너리 생성과 활용 예시 phone_book = { "철수": "010-1234-5678", "영희": "010-9876-5432", "민수": "010-1111-2222" } # 데이터 조회 print(phone_book["철수"]) # 010-1234-5678 # 데이터 추가 phone_book["수진"] = "010-3333-4444" # 데이터 삭제 del phone_book["민수"] print(phone_book) # {'철수': '010-1234-5678', '영희': '010-9876-5432', '수진': '010-3333-4444'} |
■ 집합(Set)의 특징과 활용
집합은 중복을 허용하지 않는 데이터를 저장할 수 있는 자료구조예요.
데이터가 고유해야 할 때나 교집합, 합집합 연산을 할 때 유용합니다.
# 집합 생성과 활용 예시 fruits = {"사과", "바나나", "체리"} print(fruits) # {'사과', '바나나', '체리'} # 데이터 추가 fruits.add("오렌지") print(fruits) # {'사과', '바나나', '체리', '오렌지'} # 데이터 삭제 fruits.remove("바나나") print(fruits) # {'사과', '체리', '오렌지'} # 합집합과 교집합 more_fruits = {"체리", "수박", "포도"} print(fruits | more_fruits) # 합집합: {'사과', '체리', '오렌지', '수박', '포도'} print(fruits & more_fruits) # 교집합: {'체리'} |
■ 예제: 전화번호부 만들기
이제 딕셔너리를 활용해 간단한 전화번호부 프로그램을 만들어볼게요.
# 전화번호부 프로그램 phone_book = {} while True: name = input("이름을 입력하세요 (종료하려면 '끝'): ") if name == "끝": break number = input(f"{name}의 전화번호를 입력하세요: ") phone_book[name] = number # 전화번호부 출력 print("\n전화번호부:") for name, number in phone_book.items(): print(f"{name}: {number}") |
■ 집합으로 중복 제거 예제
집합은 중복된 데이터를 자동으로 제거하는 특성을 활용할 수 있어요.
# 학생 이름 중복 제거하기 students = ["철수", "영희", "민수", "철수", "영희"] unique_students = set(students) print(unique_students) # {'철수', '영희', '민수'} |
반응형
'IT > 파이썬 Python' 카테고리의 다른 글
코딩 에러? 파이썬 예외 처리 완벽 가이드 (0) | 2024.11.01 |
---|---|
코드 재사용의 왕도! 파이썬 함수와 모듈 사용법 (1) | 2024.10.31 |
파이썬 기초 . 리스트와 튜플 차이점 한 번에 이해하기 (1) | 2024.10.29 |
파이썬 기초 . for문 vs while문: 반복문 제대로 익히기 (0) | 2024.10.28 |
파이썬 기초 . 조건문(if, elif, else) 완벽 이해하기 (1) | 2024.10.27 |
댓글