반응형
Chapter 01. 자료구조
튜플과 while문 + 딕셔너리
주요 개념 요약
1) 튜플과 while문
- 튜플(tuple)은 리스트와 달리 수정 불가(immutable) 한 자료형.
- 반복문에서 튜플을 활용하면 순차 접근이 쉽고, 특히 while문에서는 인덱스로 관리 가능.
- while문은 조건이 참일 동안 계속 반복되기 때문에, 튜플 길이를 활용하여 종료 조건을 직접 지정해야 함.
2) 딕셔너리(Dictionary)
- 딕셔너리는 key–value 구조로 데이터를 저장하는 자료형.
- 선언 방법: {키: 값, 키: 값, ...}
- key는 immutable 자료형만 가능 (문자열, 숫자, 튜플 등)
- value는 어떤 자료형도 가능 (리스트, 튜플, 다른 딕셔너리까지 모두 포함 가능)
- 딕셔너리는 데이터를 이름으로 접근할 수 있어 구조적인 데이터 관리에 매우 유용함.
코드 예시 모음
1. 튜플과 while문 (기초)
students = ("홍길동", "박찬호", "이용규", "박승철", "김지은")
i = 0
while i < len(students):
print(students[i])
i += 1
2. 튜플과 while문 (응용 예시)
scores = (90, 85, 77, 65, 88)
i = 0
while i < len(scores):
if scores[i] < 70:
print("불합격:", scores[i])
i += 1
3. 딕셔너리 선언
students = {
's1': '홍길동',
's2': '박찬호',
's3': '이용규',
's4': '박승철',
's5': '김지은'
}
4. 딕셔너리에 다양한 자료형 사용
member = {
"이름": "홍길동",
"메일": "gildong@gmail.com",
"학년": 3,
"취미": ["농구", "게임"]
}
5. 딕셔너리 안에 딕셔너리 (중첩 구조)
student1 = {"이름": "홍길동", "메일": "gildong@gmail.com", "학년": 3}
student2 = {"이름": "박찬호", "메일": "chanho@gmail.com", "학년": 2}
student3 = {"이름": "이용규", "메일": "yonggyu@gmail.com", "학년": 1}
studentInfo = {1: student1, 2: student2, 3: student3}
6. 나의 정보 딕셔너리에 저장하기
myInfo = {
"이름": "박경진",
"전공": "computer",
"메일": "jin@naver.com",
"학년": 3,
"주소": "대한민국 서울",
"취미": ["요리", "여행"]
}
print("myInfo:", myInfo)
* 이 글은 제로베이스 데이터사이언스 파트타임 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.
💡 생각 정리
튜플과 딕셔너리는 모두 파이썬에서 매우 중요한 기본 자료구조이다.
튜플은 수정이 불가능하지만 안정적이고 빠르기 때문에 고정된 데이터 관리에 유용하며,
딕셔너리는 key-value 방식으로 구조화된 데이터를 다루기 때문에 실제 프로그램에서 데이터 관리할 때 필수적이다.
특히 딕셔너리 안에 리스트나 다른 딕셔너리를 넣을 수 있다는 점은 데이터 모델링을 할 때 다양한 구조를 표현할 수 있게 해준다.
반복문과 함께 사용하는 방식 역시 유연해서, 실무에서도 굉장히 자주 활용되는 패턴임을 다시 느꼈다.
🚀 적용점
- 튜플은 메뉴 목록, 요일, 변경되지 않는 설정 값 등 불변 데이터를 관리할 때 바로 활용해보기.
- 딕셔너리는 사용자 정보, API 응답 구조, 상품 데이터 등 구조화된 데이터를 표현할 때 적극 활용.
- 딕셔너리 안에 리스트/딕셔너리 포함시키는 연습을 통해 JSON 구조 이해까지 확장해보기.
- 반복문과 자료구조를 조합해 데이터 필터링, 탐색, 출력 포맷팅 등을 실제 코딩 문제에 적용하기.
반응형
'데이터' 카테고리의 다른 글
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -15 (0) | 2025.12.12 |
|---|---|
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -14 (0) | 2025.12.11 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -12 (0) | 2025.12.09 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -11 (0) | 2025.12.08 |
| 제로베이스 데이터사이언스 스쿨 - Part 05. 자료구조&알고리즘 with Python -10 (0) | 2025.12.07 |