본문 바로가기
Programing/Python

Python for Loop with Range

by 멍멍돌이야 2023. 3. 3.
반응형

이 자습서에서는 Python for 루프와 이를 사용하여 고정된 횟수만큼 코드 블록을 실행하는 방법에 대해 배웁니다.

 

 

1. range() 함수가 있는 Python for 루프 문 소개

프로그래밍에서 코드 블록을 여러 번 실행하려는 경우가 많습니다. 

이렇게 하려면 for 루프를 사용합니다.

 

다음은 for 루프의 구문을 보여줍니다.

for index in range(n):
    statement

이 구문에서 인덱스를 루프 카운터라고 합니다. 그리고 n은 루프가 명령문을 실행할 횟수입니다.

루프 카운터의 이름은 인덱스일 필요가 없으며 원하는 이름을 사용할 수 있습니다.

range()는 Python의 내장 함수입니다. 프로그램에서 항상 사용할 수 있다는 점에서 print() 함수와 같습니다.

range(n)은 0부터 시작하는 n개의 정수 시퀀스를 생성합니다. n에 도달할 때까지 값을 1씩 증가시킵니다.

따라서 range(n)은 0,1, 2, …n-1과 같은 일련의 숫자를 생성합니다. 항상 마지막 숫자(n)보다 짧습니다.

다음 다이어그램은 for 루프 문을 보여줍니다.

for

다음 예제는 range() 함수와 함께 for 루프를 사용하여 0에서 4까지 5개의 숫자를 화면에 표시하는 방법을 보여줍니다.

for index in range(5):
    print(index)

 

결과:

0
1
2
3
4

이 예에서 for 루프는 print(index) 문을 정확히 다섯 번 실행합니다.

화면에 1부터 5까지 5개의 숫자를 표시하려면 다음과 같이 하면 됩니다.

for index in range(5):
    print(index + 1)

 

결과:

1
2
3
4
5

이 예제에서는 각 반복마다 인덱스를 하나씩 늘리고 출력합니다. 그러나 더 좋은 방법이 있습니다.

 

 

2. 시퀀스의 시작 값 지정

기본적으로 range() 함수는 시퀀스의 시작 번호로 0을 사용합니다.

또한 range() 함수를 사용하면 다음과 같이 시작 번호를 지정할 수 있습니다.

range(start, stop)

이 구문에서 range() 함수는 중지 값에 도달할 때까지 시작 값을 1씩 증가시킵니다.

 

다음 예제에서는 for 루프를 사용하여 1에서 5까지 5개의 숫자를 화면에 표시합니다.

for index in range(1, 6):
    print(index)

 

결과:

1
2
3
4
5

 

 

3. 시퀀스 증분 지정

기본적으로 범위(시작, 중지)는 각 루프 반복에서 시작 값을 1씩 증가시킵니다.

시작 값을 다른 숫자로 늘리려면 다음 형식의 range() 함수를 사용합니다.

range(start, stop, step)

이 형식에서 range() 함수가 증가해야 하는 값을 지정할 수 있습니다.

다음 예는 0에서 10까지의 모든 홀수를 보여줍니다.

for index in range(0, 11, 2):
    print(index)

 

결과:

0
2
4
6
8
10

 

 

4. Python for 루프를 사용하여 시퀀스의 합계 계산

다음 예제에서는 for 루프 문을 사용하여 1에서 100까지의 숫자 합계를 계산합니다.

sum = 0
for num in range(101):
    sum += num

print(sum)

 

결과:

5050

 

설명:

  • 먼저 합계가 0으로 초기화됩니다.
  • 둘째, 각 반복에서 1부터 100까지의 숫자로 합계를 더합니다.
  • 마지막으로 합계를 화면에 표시합니다.

     
그건 그렇고, 당신이 수학자라면 다음과 같은 간단한 공식을 사용할 수 있습니다.

n = 100
sum = n * (n+1)/2
print(sum)

 

5. Summary

  • 코드 블록을 고정된 횟수만큼 실행하려면 for 루프 문을 사용하십시오.
  • 범위(시작, 중지, 단계)를 사용하여 루프를 사용자 지정합니다.
         

 

 

 

 

refreance: https://www.pythontutorial.net/python-basics/python-for-range/
728x90
반응형

댓글