[기초#4] 리스트(List)와 딕셔너리(Dictionary) 한 번에 정리
한줄 요약:
많은 데이터를 한 번에 담고 싶다면?
👉 “리스트”와 “딕셔너리”만 알면 파이썬 데이터는 끝!
1. 리스트(List)란?
여러 개의 값을 순서대로 나열해 저장하는 자료형이에요.
대괄호[ ]안에 값을 쉼표로 구분해 넣어요 👇
fruits = ["사과", "바나나", "딸기"]
print(fruits)
🪄 결과:
['사과', '바나나', '딸기']
2. 리스트 기본 문법
| 동작 | 코드 | 결과 |
|---|---|---|
| 특정 요소 접근 | fruits[0] | '사과' |
| 마지막 요소 | fruits[-1] | '딸기' |
| 요소 추가 | fruits.append("포도") | ['사과', '바나나', '딸기', '포도'] |
| 요소 삭제 | fruits.remove("바나나") | ['사과', '딸기', '포도'] |
| 길이 확인 | len(fruits) | 3 |
3. 리스트 반복문 예제
fruits = ["사과", "바나나", "딸기"]
for fruit in fruits:
print(f"{fruit} 맛있어요! 😋")
🪄 결과:
사과 맛있어요! 😋
바나나 맛있어요! 😋
딸기 맛있어요! 😋
4. 리스트 안에 숫자도 OK
scores = [90, 85, 78, 95]
# 합계와 평균 구하기
total = sum(scores)
avg = total / len(scores)
print("총점:", total)
print("평균:", avg)
🪄 결과:
총점: 348
평균: 87.0
5. 딕셔너리(Dictionary)란?
키(key) 와 값(value) 의 쌍으로 데이터를 저장하는 자료형
👉 이름표가 붙은 상자라고 생각하면 돼요 🎁
student = {
"이름": "가온",
"나이": 5,
"좋아하는 것": "레고"
}
6. 딕셔너리 기본 사용법
| 동작 | 코드 | 결과 |
|---|---|---|
| 특정 값 접근 | student["이름"] | '가온' |
| 새 항목 추가 | student["취미"] = "그림그리기" | 추가됨 |
| 항목 삭제 | del student["나이"] | 삭제됨 |
| 전체 키 보기 | student.keys() | dict_keys([...]) |
| 전체 값 보기 | student.values() | dict_values([...]) |
7. 예제: 학생 정보 출력
student = {
"이름": "가온",
"나이": 5,
"좋아하는 것": "레고"
}
for key, value in student.items():
print(f"{key}: {value}")
🪄 결과:
이름: 가온
나이: 5
좋아하는 것: 레고
8. 리스트 vs 딕셔너리 비교
| 항목 | 리스트(List) | 딕셔너리(Dictionary) |
|---|---|---|
| 저장 구조 | 순서(index) 기반 | 이름(key) 기반 |
| 선언 방법 | [] | {} |
| 접근 방법 | fruits[0] | student["이름"] |
| 대표 예시 | 과일 목록, 점수 목록 | 사람 정보, 설정 값 |
9. 자주 하는 실수
| 실수 | 예시 | 수정 |
|---|---|---|
| 키 이름 오타 | student["nae"] | "name"처럼 정확히 써야 함 |
| 리스트에 문자열 추가 시 괄호 누락 | fruits.append"포도" | fruits.append("포도") |
| 중괄호·대괄호 혼동 | {1,2,3} vs [1,2,3] | 딕셔너리는 {}, 리스트는 [] |
10. 연습문제
# 1. 친구 리스트 만들기
friends = ["지우", "나연", "가온"]
# 2. 친구별 좋아하는 음식 딕셔너리 만들기
foods = {
"지우": "피자",
"나연": "떡볶이",
"가온": "초코케이크"
}
# 3. for문으로 출력하기
for name in friends:
print(f"{name}는 {foods[name]}를 좋아해요!")
🪄 실행 결과:
지우는 피자를 좋아해요!
나연은 떡볶이를 좋아해요!
가온은 초코케이크를 좋아해요!
이전 강좌 👈 [기초#3] 반복문 for/while: 1분 루프 연습
다음 강좌 👉 [기초#5] 함수(function): 코드 재사용의 핵심