질문)
앞에 for가 있어야 리스트요소가 변수에 할당하는건가요?
네, 맞습니다. **for**가 앞에 있어야 리스트의 요소가 변수에 순차적으로 할당됩니다.
변수 in 리스트 형태는 단독으로 사용될 수 없고, for와 함께 **for 변수 in 리스트:**의 형태로 사용되어야만 반복문 안에서 리스트의 각 요소를 변수에 할당하는 역할을 수행합니다.
이 구문은 파이썬의 for 반복문을 구성하는 핵심 부분입니다. for 키워드가 리스트의 각 요소를 순회하겠다는 명령을 내리고, in 키워드가 어떤 리스트에서 요소를 가져올지 지정하며, 변수는 가져온 요소를 저장하는 역할을 합니다.
예를 들어, fruits = ['사과', '바나나', '포도']라는 리스트가 있을 때, 아래와 같이 for문을 사용해야만 각 과일 이름이 fruit 변수에 차례대로 할당됩니다.
for fruit in fruits:
print(fruit)
만약 for 없이 fruit in fruits만 사용하면 구문 오류가 발생합니다. for는 반복을 시작하라는 신호와 같기 때문입니다.
for 반복문과 in 키워드를 활용한 예제 두 가지를 더 설명해 드릴게요.
1. 문자열의 각 문자에 접근하기
for 반복문은 리스트뿐만 아니라 문자열의 각 문자를 순차적으로 순회할 때도 사용됩니다. 문자열은 문자의 나열이므로, 리스트와 유사하게 다룰 수 있습니다.
sentence = "파이썬은 재미있다"
for char in sentence:
print(char)
설명:
- for char in sentence: 구문은 문자열 sentence의 첫 번째 문자부터 하나씩 char 변수에 할당합니다.
- 첫 번째 반복에서는 char가 '파'가 되고 print(char)가 실행되어 '파'가 출력됩니다.
- 다음 반복에서는 char가 '이'가 되고, 이 과정이 '다'까지 반복됩니다.
- 결과적으로, sentence의 모든 문자가 한 줄씩 출력됩니다.
2. 튜플과 함께 사용하기
for 반복문은 **튜플(tuple)**과 함께 사용될 때도 리스트와 동일하게 동작합니다. 튜플은 리스트와 비슷하지만 한 번 생성되면 요소를 변경할 수 없는 자료구조입니다.
fruits = ('사과', '바나나', '포도')
for fruit in fruits:
print(f"{fruit}는 맛있다.")
설명:
- for fruit in fruits: 구문은 튜플 fruits의 첫 번째 요소인 '사과'를 fruit 변수에 할당합니다.
- print(f"{fruit}는 맛있다.")가 실행되어 "사과는 맛있다."가 출력됩니다.
- 다음 반복에서 '바나나'가 fruit에 할당되고, 최종적으로 '포도'까지 반복됩니다.
- 이처럼 for 루프는 리스트, 문자열, 튜플 등 다양한 반복 가능한(iterable) 객체와 함께 사용할 수 있어 매우 유용합니다.
숫자가 변수에 할당되는 예제를 만들어 드릴게요.
1. 리스트의 숫자에 접근하여 합계 계산하기
이 예제는 리스트에 있는 모든 숫자를 순차적으로 더해 총합을 구하는 과정을 보여줍니다.
scores = [85, 90, 78, 92, 88]
total_score = 0
for score in scores:
total_score = total_score + score # 또는 total_score += score
print(f"전체 점수의 합계: {total_score}")
설명:
- scores 리스트에는 다섯 개의 점수가 들어 있습니다.
- total_score 변수는 합계를 저장하기 위해 0으로 초기화했습니다.
- for score in scores: 구문은 scores 리스트의 첫 번째 요소인 85를 score 변수에 할당합니다.
- total_score = total_score + score는 현재 total_score 값에 score 변수에 할당된 값을 더해 다시 total_score에 저장합니다.
- 이 과정은 리스트의 마지막 요소인 88까지 반복됩니다.
-
- score에 85 할당 -> total_score는 85
-
- score에 90 할당 -> total_score는 85 + 90 = 175
-
- score에 78 할당 -> total_score는 175 + 78 = 253
- ... 이렇게 마지막까지 더해집니다.
-
- 최종적으로, 모든 점수가 더해진 total_score 값이 출력됩니다.
2. 특정 조건에 맞는 숫자만 출력하기
이 예제는 리스트에서 특정 조건을 만족하는 숫자만 골라내는 과정을 보여줍니다.
ages = [15, 22, 18, 25, 30, 19]
print("성인만 출력:")
for age in ages:
if age >= 20:
print(age)
설명:
- ages 리스트에는 여러 사람의 나이가 들어 있습니다.
- for age in ages: 구문은 ages 리스트의 각 요소를 age 변수에 순서대로 할당합니다.
- if age >= 20: 조건문은 age 변수에 할당된 값이 20 이상인지 확인합니다.
- 이 조건이 True일 때만, 즉 age가 22, 25, 30일 때만 print(age)가 실행됩니다.
- 결과적으로, 20 이상의 나이만 골라서 출력됩니다.
'파이썬(Python)' 카테고리의 다른 글
| 파이썬, for문, if문, continue, break와 continue의 차이점, 7의 배수 출력 (0) | 2025.08.31 |
|---|---|
| 파이썬, for문, 1~30 사이의 정수 중에서 7의 배수 출력 (1) | 2025.08.31 |
| 파이썬, 무한루프 while문 안에서 break를 이용한 강제 종료 (0) | 2025.08.31 |
| 파이썬, while문 (단을 입력받아 구구단 출력) (0) | 2025.08.30 |
| 파이썬, for문 (단을 입력받아 구구단 출력) (0) | 2025.08.30 |
콘텐츠 내 자동삽입광고
