파이썬 for문과 리스트 기초부터 예제까지

목차

 

1. for문이 뭐야? 기본 구조부터

반복문 중에서 가장 자주 쓰이는 문법이 바로 for문이에요.

리스트나 문자열처럼 여러 개의 값을 하나씩 꺼내서 사용할 때 딱이죠.

 

예를 들어 이런 식이에요


for i in range(1, 6):
    print(i)

이 코드는 1부터 5까지 숫자를 차례대로 출력해줘요.

 

2. 리스트는 어떤 자료형일까?

 

리스트는 여러 개의 데이터를 묶어서 한 변수에 저장할 수 있는 구조예요.

대괄호 안에 값들을 콤마로 구분해서 넣어요.

예시로 이런 게 있어요


numbers = [10, 20, 30, 40, 50]
print(numbers[0])  # 10
print(len(numbers))  # 5

리스트는 인덱스 0부터 시작하고, len 함수로 리스트에 들어 있는 항목 수를 확인할 수 있어요.

 

3. 리스트를 for문으로 돌려보자

 

리스트에 있는 값들을 하나씩 꺼내서 출력하려면 for문이 정말 유용해요.


fruits = ["사과", "바나나", "딸기"]

for fruit in fruits:
    print(fruit)

 

몇 번째 과일인지도 같이 출력하고 싶다면 enumerate를 쓰면 돼요.


for i, fruit in enumerate(fruits):
    print(i, "번째 과일:", fruit)

 

4. 실습 예제 - 점수 평균 구하기

 

이제 for문과 리스트를 같이 써보면서, 학생들 점수 평균을 구해보는 간단한 예제를 해볼게요.

점수 평균 구하기 코드


scores = [85, 90, 78, 92, 88]
total = 0

for score in scores:
    total += score

average = total / len(scores)
print("평균 점수는", round(average, 2), "점입니다.")

 

위 코드는 점수들을 담은 리스트를 이용해서 전체 평균을 구하는 간단한 예제예요.

 

먼저 scores라는 리스트에 다섯 개의 점수를 담아뒀고요,

total이라는 변수는 점수를 하나씩 더해서 전체 합계를 저장하는 용도예요.

for score in scores: 이 줄에서 for문이 리스트 안에 있는 점수들을 하나씩 꺼내면서 total += score로 계속 더해줘요.

 

반복이 끝나면 total에는 모든 점수의 합이 들어가고,

그걸 점수 개수만큼 나눠서 평균을 구해요. len(scores)가 바로 점수 개수예요.

 

마지막으로 round(average, 2)는 평균을 소수 둘째 자리까지 반올림해서 출력해주는 부분이에요.

 

 

실행 결과는 이렇게 나와요

 

 

실행 결과

 

5. 자주 하는 실수랑 해결 팁

 

처음 공부할 땐 이런 실수를 자주 하게 되는데, 미리 알고 있으면 훨씬 편해요.

IndexError
리스트에서 없는 인덱스를 불러올 때 생기는 오류예요. 항상 리스트 길이를 확인하고 범위를 벗어나지 않도록 조심해야 해요.

 

ZeroDivisionError
리스트가 비어 있는데 평균을 구하려고 하면 0으로 나누는 문제가 생겨요.

리스트 길이가 0이 아닌지 먼저 확인하는 습관이 필요해요.

 

TypeError
리스트에 숫자랑 문자가 섞여 있으면 연산할 때 에러가 나요. 리스트에는 같은 자료형만 넣는 게 좋아요.

 

6. 마무리하며

 

대학교 실습이나 과제에서 for문과 리스트는 정말 많이 나와요.

점수 평균 계산, 특정 단어 필터링, 값 찾기 같은 기능을 구현할 때 빠질 수 없는 조합이죠.

저도 처음엔 range의 범위가 헷갈리고, 리스트 인덱스를 잘못 써서 에러를 많이 냈었는데,

여러 번 실습하다 보니까 자연스럽게 익숙해지더라고요.

 

특히 enumerate를 쓰면 인덱스랑 값을 같이 다룰 수 있어서 출력할 때도 깔끔하고요.

이제 이 정도 개념만 익혀도 나중에 리스트 컴프리헨션이나 중첩 for문을 배울 때 한결 수월할 거예요.

 

궁금한 부분이나 잘 안 되는 코드가 있다면 직접 입력해보고 하나씩 실행하면서 익혀보는 걸 추천해요.

손으로 쳐보는 게 제일 빨라요!