티스토리 뷰
목차
개발 경력이 10년이 넘어가면서 우스개 소리로 가끔 매니저분들에게 이런이야기를 했습니다. 'for 반목문과 if 조건문을 사용해서 못만드는 프로그램은 없습니다'. 개발이라는게 기능상 못만드는 문제보다는 일정과 시간의 문제가 더 크다는걸 강조할때 주로 사용했던 말이기는 하지만 이 말에는 반복문이 얼마나 많이 사용되고 중요한지를 내포하고 있습니다.
Python의 반복문은 코드에서 특정 작업을 여러 번 반복 실행하고 싶을 때 사용하는 매우 중요한 개념입니다. Python에서 가장 많이 사용하는 반복문은 for문과 while문입니다. 이 두 가지 반복문을 중심으로 반복문이 무엇인지, 어떻게 사용하는지에 대해 알아보고 실습을 통해 그 개념을 익혀보겠습니다.
1. Python에서 for 반복문 사용하기
for 반복문은 주어진 리스트, 문자열, 튜플과 같은 시퀀스를 순차적으로 반복하는 데 사용됩니다. 시퀀스 내의 모든 항목을 차례로 순회하며 특정 작업을 수행하는데, 예를 들어 리스트의 모든 요소를 하나씩 출력하는 작업을 할 수 있습니다.
기본 구조:
for 변수 in 시퀀스:
실행할 코드
예시 1: 리스트 순회하기
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
출력:
apple
banana
cherry
설명: fruits 리스트의 각 항목이 차례대로 fruit 변수에 할당되며, print(fruit)이 실행됩니다.
예시 2: 문자열 순회하기
name = "Python"
for letter in name:
print(letter)
출력:
P
y
t
h
o
n
설명: 문자열 "Python"의 각 문자가 letter 변수에 차례대로 할당되며 출력됩니다.
2. for문과 range() 함수의 활용
range() 함수는 일정 범위 내의 숫자를 생성하는 함수로, 주로 for 반복문과 함께 숫자를 반복 처리할 때 사용됩니다.
기본 구조:
for i in range(시작값, 끝값):
실행할 코드
예시 1: 0부터 4까지 출력하기
for i in range(5):
print(i)
출력:
0
1
2
3
4
설명: range(5)는 0부터 4까지의 숫자를 생성합니다. 끝값은 포함되지 않습니다.
예시 2: 1부터 5까지 출력하기
for i in range(1, 6):
print(i)
출력:
1
2
3
4
5
설명: range(1, 6)은 1부터 5까지의 숫자를 생성하며, 끝값은 포함되지 않습니다.
3. while 반복문: 조건에 따라 반복하기
while 반복문은 조건이 **참(True)**인 동안 계속해서 코드를 반복 실행합니다. 조건이 거짓(False)이 되면 반복이 종료됩니다.
기본 구조:
while 조건:
실행할 코드
예시: 1부터 5까지 출력하기
i = 1
while i <= 5:
print(i)
i += 1 # i 값을 1씩 증가시킴
출력:
1
2
3
4
5
설명: i가 1로 시작하여 i <= 5 조건이 참인 동안 계속 반복됩니다. 매 반복 시 i가 1씩 증가하며, 5가 넘어가면 반복문이 종료됩니다.
4. 무한 루프와 break, continue
4.1 무한 루프
무한 루프는 조건이 항상 참(True)인 경우, 반복문이 끝없이 실행되는 상황입니다. 의도적으로 사용할 때도 있지만, 실수로 발생하면 프로그램이 멈추지 않으므로 주의해야 합니다.
while True:
print("무한 루프입니다.")
종료 방법: 무한 루프를 종료하려면 Ctrl + C를 눌러 강제로 중지할 수 있습니다.
4.2 break 키워드: 반복문 즉시 종료
break는 반복문을 즉시 종료하고, 반복문 밖의 코드로 빠져나가도록 합니다.
for i in range(1, 6):
if i == 3:
break
print(i)
출력:
1
2
설명: i == 3인 경우 break가 실행되어 반복문이 즉시 종료됩니다.
4.3 continue 키워드: 다음 반복으로 건너뛰기
continue는 현재 실행을 중단하고, 반복문의 다음 반복으로 넘어가게 합니다.
for i in range(1, 6):
if i == 3:
continue
print(i)
출력:
1
2
4
5
설명: i == 3일 때 continue가 실행되며, print(i)는 건너뛰고 다음 반복이 실행됩니다.
5. 중첩 반복문: 반복문 안의 반복문
반복문 안에 또 다른 반복문을 사용하는 것을 중첩 반복문이라고 합니다. 이를 통해 복잡한 반복 작업을 처리할 수 있습니다.
예시: 구구단 출력 (2단부터 4단까지)
for i in range(2, 5): # 2단부터 4단까지
for j in range(1, 10): # 각 단의 1부터 9까지 곱셈
print(f"{i} x {j} = {i * j}")
print() # 빈 줄 출력
출력:
2 x 1 = 2
2 x 2 = 4
...
4 x 9 = 36
설명: 첫 번째 for 문은 2단부터 4단까지를 순차적으로 처리하고, 두 번째 for 문은 각 단의 1부터 9까지 곱셈을 출력합니다.
결론: 반복문을 활용한 효율적인 프로그래밍
for와 while 반복문은 프로그램에서 자주 사용되는 기본적인 흐름 제어 구조입니다. for 문은 주로 리스트나 문자열과 같은 시퀀스를 순회할 때 사용되고, while 문은 조건에 따라 반복을 제어할 수 있습니다. 또한, break와 continue는 반복문에서 흐름을 제어하는 중요한 도구이며, 중첩 반복문은 복잡한 구조를 처리하는 데 유용합니다.
이제 Python의 반복문을 이해하고, 이를 실전에서 활용할 수 있게 되었습니다. 다양한 문제에서 반복문을 사용해 더 효율적이고 간결한 코드를 작성해보세요!
요약 디스크립션
Python의 반복문인 for와 while에 대해 알아보세요. 기본적인 반복문부터 break, continue 키워드, 중첩 반복문까지 반복문을 자유롭게 활용할 수 있는 예제를 제공합니다.