range 함수
Coddy Python 여정의 Fundamentals 섹션에 포함된 레슨 — 77개 중 40번째.
Python의 range() 함수는 숫자 시퀀스를 생성하며, 이는 일반적으로 코드를 특정 횟수만큼 반복하기 위해 for 루프와 함께 사용됩니다.
0에서 시작하여 4에서 끝나는 범위를 생성합니다:
for i in range(5):
print(i)출력 결과는 다음과 같습니다:
0
1
2
3
4시작 값을 지정할 수도 있습니다:
for i in range(2, 6):
print(i)다음과 같이 출력됩니다:
2
3
4
5그리고 증감값(step value)을 지정할 수 있습니다:
for i in range(1, 10, 2):
print(i)다음과 같이 출력됩니다:
1
3
5
7
9역순으로 세기 (내림차순):
또한 음수 증감값(negative step)을 사용하여 역순으로 셀 수 있습니다. 음수 증감값을 사용할 때는 시작 값이 종료 값보다 커야 합니다:
for i in range(10, 0, -1):
print(i)다음과 같이 출력됩니다:
10
9
8
7
6
5
4
3
2
1더 큰 음수 단계(step)를 사용할 수도 있습니다:
for i in range(20, 9, -2):
print(i)다음과 같이 출력됩니다:
20
18
16
14
12
10종료 값이 9임에도 불구하고 출력에 10이 포함되어 있음에 유의하세요. 이는 종료 값이 포함되지 않기(exclusive) 때문입니다. 즉, 현재 값이 종료 값보다 큰 동안 루프가 계속됩니다. 10 > 9이므로 출력됩니다. 다음 단계는 8이 되는데, 이는 9보다 크지 않으므로 루프가 중단됩니다.
핵심 포인트: 음수 단계(negative step)를 사용할 때, 시작 값은 종료 값보다 커야 합니다. 종료 값은 여전히 제외됩니다(포함되지 않음).
챌린지
초급range() 함수를 사용하여 숫자를 출력하는 for 루프를 작성하세요. 프로그램은 다음을 수행해야 합니다:
- 세 개의 숫자를 입력으로 읽습니다:
start,end, 그리고step range(start, end, step)을 사용하는 for 루프를 사용하여start부터end까지(end는 포함하지 않음) 주어진step증분으로 모든 숫자를 출력합니다- 각 숫자를 새 줄에 출력합니다
지침:
- 입력을 읽는 코드는 이미 제공되어 있습니다
- 주석을 사용자의 for 루프로 교체하세요
- 루프에서
range(start, end, step)를 사용하세요
치트 시트
range() 함수는 세 가지 방식으로 사용할 수 있습니다:
range(stop): 0부터 시작하여 stop(제외)까지 1씩 증가합니다.range(start, stop): start(포함)에서 시작하여 stop(제외)까지 1씩 증가합니다.range(start, stop, step): start에서 시작하여 stop까지 지정된 step만큼 증가/감소합니다.
예제:
# 0부터 4까지 셉니다
for i in range(5):
print(i)
# 2부터 5까지 셉니다
for i in range(2, 6):
print(i)
# 1부터 9까지 홀수를 셉니다
for i in range(1, 10, 2):
print(i)
# 10부터 2까지 2씩 감소하며 셉니다
for i in range(10, 0, -2):
print(i)기억하세요:
- Start는 포함되고, stop은 제외됩니다.
- Step은 양수일 수도 있고 음수일 수도 있습니다.
직접 해보기
# 사용자로부터 입력 받기
start = int(input())
end = int(input())
step = int(input())
# 여기에 for 루프를 작성하세요
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.