본문으로 건너뛰기
Python 기초집LESSON 09

튜플, 집합, 딕셔너리

난이도입문
예상 시간30분
선수지식이전 강의

9강. 튜플, 집합, 딕셔너리

1. 이번 강의에서 해결할 문제

모든 데이터를 리스트로만 표현하면 이름으로 찾기 어렵고 중복 제거 의도가 드러나지 않습니다. 데이터 성격에 맞는 컬렉션을 선택합니다.

2. 학습 목표

3. 핵심 개념

튜플은 순서가 있지만 변경할 수 없고, 집합은 순서보다 고유성에 집중합니다. 딕셔너리는 고유한 키를 값에 연결합니다. 전투 로그처럼 필드 이름이 중요한 데이터는 딕셔너리가 읽기 쉽습니다.

4. 단계별 코드 예시

파일 경로: C:\dev\game-log-analyzer\main.py

main.py
position = (120, 48)
skills = {"slash", "fireball", "slash"}
damage_by_skill = {}

records = [
{"skill": "slash", "damage": 80},
{"skill": "fireball", "damage": 150},
{"skill": "slash", "damage": 95},
]

for record in records:
skill = record["skill"]
damage_by_skill[skill] = damage_by_skill.get(skill, 0) + record["damage"]

print("위치:", position)
print("고유 스킬:", sorted(skills))
print("스킬별 총 피해:", damage_by_skill)
PowerShell · 실행
py -3.13 .\main.py

5. 코드가 동작하는 이유

집합 생성 시 중복 문자열은 하나로 합쳐집니다. dict.get(key, 0)은 키가 없을 때 0을 반환해 첫 누적도 처리합니다. 딕셔너리는 삽입 순서를 보존하지만 통계 출력 순서가 중요하면 sorted()를 명시합니다.

6. 자주 하는 실수와 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

튜플, 집합, 딕셔너리 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1다음 중 “튜플, 집합, 딕셔너리”의 핵심 요약을 실제 상황에 맞게 적용한 것은 무엇인가요?
  2. 문제 2‘빈 집합을 {}로 생성’ 상태에 관한 “튜플, 집합, 딕셔너리” 본문의 설명으로 가장 알맞은 것은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

9강. 튜플, 집합, 딕셔너리 미완료 상태