for 문
for 문
for 문은 이전 단락에서 살펴본 while 문과 같은 반복문입니다.
다만 for 문은 튜플이나 리스트를 사용할 때 while 문보다 더욱 간결하게 코드를 작성할 수 있어 많이 사용됩니다.
실행 결과
유비
관우
장비
제갈량
위의 예제에서 첫 번째 루프에서는 ['유비', '관우', '장비', '제갈량']라는 리스트의 첫 번째 요소인 ‘유비'가 변수 i에 대입되고 print(i)가 수행됩니다.
그리고나서 두 번째 루프에서는 리스트의 두 번째 요소인 '관우'가 변수 i에 대입되고 print(i)가 수행됩니다.
이와 같은 루프가 리스트의 마지막 요소까지 반복됩니다.
실행 결과
3
7
11
위의 예제는 튜플을 이용한 for 문의 예제입니다.
for 문의 첫 번째 루프에서는 리스트의 첫 번째 요소인 튜플 (1,2)가 변수 first와 last에 각각 대입되어 변수 first에는 1이 대입되고 변수 last에는 2가 대입됩니다.
따라서 print(first+last)는 1+2인 3을 출력하게 됩니다.
이처럼 for 문을 사용하면 튜플의 각 원소를 손쉽게 임시 변수에 대입하여 사용할 수 있습니다.
다음 예제는 for 문과 함께 자주 사용되는 range 함수에 대한 예제입니다.
실행 결과
10
위의 예제를 살펴보면 변수 sum에 변수 a를 계속해서 더하는 반복문입니다.
반복문의 결과는 0+1+2+3+4로 10의 결과값이 출력됩니다.
range 함수는 range(시작 숫자, 마지막 숫자)의 형태로 사용되며, 예를 들어 range(1,5)는 1, 2, 3, 4의 숫자의 나열을 의미합니다.
이처럼 range 함수는 시작 숫자부터 (마지막 숫자 - 1) 까지의 숫자의 나열을 의미하며, 이때 마지막 숫자는 포함되지 않습니다.
다음 예제는 for 문을 두 번 중첩하여 사용하여 구구단을 출력하는 예제입니다.
코딩연습
for a in range(2,10):
for b in range(1,10):
print(a,"X",b,"=", a*b)
if b == 9:
print("\n")
실행 결과
2 X 1 = 2
2 X 2 = 4
2 X 3 = 6
2 X 4 = 8
2 X 5 = 10
2 X 6 = 12
2 X 7 = 14
2 X 8 = 16
2 X 9 = 18
...
8 X 1 = 8
8 X 2 = 16
8 X 3 = 24
8 X 4 = 32
8 X 5 = 40
8 X 6 = 48
8 X 7 = 56
8 X 8 = 64
8 X 9 = 72
9 X 1 = 9
9 X 2 = 18
9 X 3 = 27
9 X 4 = 36
9 X 5 = 45
9 X 6 = 54
9 X 7 = 63
9 X 8 = 72
9 X 9 = 81