쉽게 설명해 봅니다.
반복문은 컴퓨터에게 "이 일을 몇 번 반복해줘!"라고 지시하는 명령어라고 생각하면 됩니다. 마치 1부터 10까지 숫자를 세는 것처럼, 컴퓨터에게 특정 작업을 여러 번 반복하도록 시키는 것이죠.
- 반복문이란 : 같은 작업을 여러 번 반복하는 명령어
for 문:
기차: 정해진 역 (1, 2, 3, ...) 에 순서대로 정차하는 기차처럼, 정해진 횟수만큼 반복합니다.
while 문:
미끄럼틀: 일정 높이까지 올라가면 미끄럼틀을 타고 내려오는 것처럼, 특정 조건이 만족될 때까지 반복합니다.
왜 반복문을 사용할까요?
- 같은 작업을 반복해야 할 때: 1부터 100까지 더하는 것처럼 같은 작업을 여러 번 반복해야 할 때 유용합니다.
- 리스트나 문자열의 모든 요소를 처리할 때: 리스트에 있는 모든 숫자를 출력하거나, 문자열의 모든 글자를 바꾸는 등의 작업을 할 때 사용합니다.
파이썬에서 주로 사용하는 반복문 종류
- for 문: 정해진 횟수만큼 반복할 때 사용합니다.
- while 문: 특정 조건이 만족될 때까지 반복합니다.
for 문 예시
for i in range(10):
print("Hello, World!")
- for i in range(10):
- for는 반복문을 시작하는 키워드입니다.
- i는 임의로 정한 변수명으로, 각 반복마다 0부터 9까지의 값을 순서대로 가집니다.
- range(10)은 0부터 9까지의 숫자를 생성하는 함수입니다. 즉, 총 10번 반복하게 됩니다.
- print("Hello, World!"):
- 각 반복마다 "Hello, World!"라는 문자열을 출력합니다.
- 작동 원리:
- i가 0으로 초기화됩니다.
- "Hello, World!"가 출력됩니다.
- i가 1 증가하여 1이 됩니다.
- 2번과 3번 과정을 i가 9가 될 때까지 반복합니다.
# Python
# 1부터 5까지 숫자 출력하기
for i in range(1, 6):
print(i)
- range(1, 6): 1부터 5까지의 숫자를 생성하는 함수입니다.
- for i in range(1, 6): 부분은 "i라는 변수에 1부터 5까지의 숫자를 차례대로 대입하면서 다음 코드를 반복해라"라는 의미입니다.
while 루프를 10번만 반복하는 방법
count = 0
while True:
print("안녕하세요")
count += 1 # count를 1 증가시킴
if count == 10:
break # count가 10이 되면 반복문 종료
코드 설명:
- count = 0: 반복 횟수를 세기 위한 변수 count를 0으로 초기화합니다.
- while True:: 무한 반복을 시작합니다.
- print("안녕하세요"): "안녕하세요"를 출력합니다.
- count += 1: count 변수의 값을 1 증가시켜 현재까지 반복한 횟수를 기록합니다.
- if count == 10:: count가 10이 되면 아래의 코드를 실행합니다.
- break: 현재 실행 중인 while 루프를 즉시 종료합니다.
작동 원리:
- 처음 while 루프가 시작될 때 count는 0입니다.
- 매 반복마다 count가 1씩 증가하고, "안녕하세요"가 출력됩니다.
- count가 10이 되면 break를 만나 while 루프를 탈출하고, 프로그램은 종료됩니다.
while 루프를 1~10번까지 합계 구하기
# 1부터 10까지 더하기
sum = 0
num = 1
while num <= 10:
sum += num
num += 1
print("1부터 10까지의 합은:", sum)
- while num <= 10: 부분은 "num이 10보다 작거나 같을 동안 다음 코드를 반복해라"라는 의미입니다.
- sum += num은 sum에 num을 더하는 연산입니다.
- num += 1은 num에 1을 더하여 다음 숫자로 넘어갑니다.
while 문은 특정 조건이 만족될 때까지 반복적으로 코드를 실행하는 반복문입니다. 우리가 원하는 것은 사용자가 5를 입력하면 while 루프를 탈출하는 것이죠.
while True:
num = int(input("숫자를 입력하세요 (5를 입력하면 종료): "))
if num == 5:
break
print(f"입력한 숫자는 {num}입니다.")
- 코드 설명:
- while True:: 무한 루프를 생성합니다. 즉, 특별한 조건이 없으면 계속해서 반복됩니다.
- num = int(input("숫자를 입력하세요 (5를 입력하면 종료): ")): 사용자에게 숫자를 입력받고, 입력받은 값을 정수형으로 변환하여 num 변수에 저장합니다.
if num == 5:: 입력받은 숫자가 5와 같으면 아래의 코드를 실행합니다.
-
- break: 현재 실행 중인 가장 가까운 반복문(즉, while 문)을 탈출합니다.
코드 작동 방식:
- 프로그램이 실행되면 무한 루프에 진입합니다.
- 사용자에게 숫자를 입력하라는 메시지를 출력하고, 입력받은 숫자를 num 변수에 저장합니다.
- 입력받은 숫자가 5가 아니면, 입력한 숫자를 다시 출력하고 다시 루프의 처음으로 돌아갑니다.
- 입력받은 숫자가 5이면 break를 만나 루프를 탈출하고, 프로그램이 종료됩니다
-
- while True: 무한 루프를 만듭니다.
- if 조건: 특정 조건(예: 입력 값이 5인 경우)이 만족되면 루프를 탈출합니다.
- break: 반복문을 즉시 탈출합니다.