..

Search

14) for 문

for 문


for 문

for 문은 이전 단락에서 살펴본 while 문과 같은 반복문입니다.

다만 for 문은 튜플이나 리스트를 사용할 때 while 문보다 더욱 간결하게 코드를 작성할 수 있어 많이 사용됩니다.

 

코딩연습

tempList = ['유비', '관우', '장비', '제갈량']

for i in tempList:

    print(i)

코딩테스트 ▶

실행 결과

유비
관우
장비
제갈량

 

위의 예제에서 첫 번째 루프에서는 ['유비', '관우', '장비', '제갈량']라는 리스트의 첫 번째 요소인 ‘유비'가 변수 i에 대입되고 print(i)가 수행됩니다.

그리고나서 두 번째 루프에서는 리스트의 두 번째 요소인 '관우'가 변수 i에 대입되고 print(i)가 수행됩니다.

이와 같은 루프가 리스트의 마지막 요소까지 반복됩니다.

 

코딩연습

i = [(1,2),(3,4),(5,6)]

for (first,last) in i:

    print(first+last)

코딩테스트 ▶

실행 결과

3

7

11

 

위의 예제는 튜플을 이용한 for 문의 예제입니다.

for 문의 첫 번째 루프에서는 리스트의 첫 번째 요소인 튜플 (1,2)가 변수 first와 last에 각각 대입되어 변수 first에는 1이 대입되고 변수 last에는 2가 대입됩니다.

따라서 print(first+last)는 1+2인 3을 출력하게 됩니다.

이처럼 for 문을 사용하면 튜플의 각 원소를 손쉽게 임시 변수에 대입하여 사용할 수 있습니다.

 

다음 예제는 for 문과 함께 자주 사용되는 range 함수에 대한 예제입니다.

코딩연습

sum = 0

for a in range(1,5):

    sum = sum + a

print(sum)

코딩테스트 ▶

실행 결과

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


연습문제