for 루프

Python SELF KO
레벨 4 , 레슨 2
사용 가능

8.1 for 루프

조건에 따라 명령어 그룹을 실행할 수 있다는 것은 멋진 일이야. 그런데 어떤 동작을 100번 실행하고 싶다면? 어떻게 해야 하지?

Python 언어에는 이럴 때 사용하는 루프가 있어. 우리 작업에 딱 맞는 게 바로 for 루프야. for 루프의 일반적인 모양은 다음과 같아:

for 변수 in 값_리스트:
    명령어1
    명령어1
    명령어N

여기서 값_리스트는 값의 집합이야: 리스트, 문자열, 사전 등(나중에 설명할게).

변수값_리스트의 각 값을 차례로 받아오고, 그 값에 대해 블록의 명령어가 실행돼.

예제:

예제 설명

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
1. 변수 fruit"apple"이 할당되고 명령어 print(fruit )가 실행돼. 2. 변수 fruit"banana"이 할당되고 명령어 print(fruit )가 실행돼. 3. 변수 fruit"cherry"이 할당되고 명령어 print(fruit )가 실행돼.

이렇게 루프가 작동해:

in 다음에 있는 리스트에 값이 10개 있다면, 블록이 10번 실행될 거야.

값_리스트의 각 값에 대해 두 가지가 발생해:

  1. 루프의 변수(단어 for 뒤에 지정된 것)에게 리스트의 다음 값이 할당돼.
  2. 그 다음 명령어 블록이 실행돼.

또 다른 예제:

예제 설명

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for x in numbers:
    print(x)
루프는 다음 숫자들을 화면에 출력해:
1
2
3
4
5
6
7
8
9
10

8.2 범위 설정 — range

마지막 예제에서 봤듯이, 10개의 숫자를 화면에 출력하는 것은 간단해. 하지만 루프를 100번 혹은 1000번 실행하고 싶다면?

당연히 이를 해결할 방법이 있어. Python 언어에는 숫자 시퀀스를 생성하는 특별한 함수 range()가 있어, for 루프와 결합하여 반복 작업을 제어하는 강력한 도구로 만들어줘.

함수 range()는 전달된 인수의 수에 따라 여러 가지 방법으로 사용할 수 있어.

기본 사용법 range():

한 개의 인수: range(n)0부터 n-1까지의 시퀀스를 생성해. 이는 특정 횟수만큼 동작을 실행해야 할 때 유용해.


for i in range(5):
    print(i)  # 0부터 4까지의 숫자를 출력할 거야

두 개의 인수: range(start, stop)start부터 stop-1까지의 시퀀스를 생성해. 특정 숫자부터 반복을 시작할 때 유용해.


for i in range(1, 6):
    print(i)  # 1부터 5까지의 숫자를 출력할 거야 

세 개의 인수: range(start, stop, step)는 시퀀스에서 숫자 간의 간격을 결정하는 세 번째 인수 step을 추가해.


for i in range(0, 10, 2):
    print(i)  # 0부터 8까지의 짝수를 출력해  

역방향 루프: range()는 숫자를 역순으로 생성할 수 있어서 역방향 반복을 수행할 수 있어.


for i in range(10, 0, -1):
    print(i)  # 10부터 1까지의 숫자를 출력해 

range() 함수는 for 루프와 결합되어 Python의 반복을 제어하는 유연한 도구를 제공해. 이를 이해하면 더 효율적이고 이해하기 쉬운 루프를 만들 수 있어, 모든 프로그램의 필수적인 부분이지.

8.3 리스트를 통한 루프

만약 다양한 값에 대해 동작 그룹을 실행하고 싶다면, range() 함수는 적합하지 않아. 언제든지 대괄호를 사용하여 이러한 값을 리스트로 묶을 수 있어. 이런 작업의 일반적인 형태는 다음과 같아:


for 변수 in [val1, val2, …, valN]:
    명령어1
    명령어1
    명령어N

값을 콤마로 나열하면 루프가 각 값에 대해 실행되고 변수는 차례로 각 값을 받아.

예제 설명

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
                    
루프는 다음 문자열들을 화면에 출력해:
apple
banana
cherry

리스트에 숫자를 지정할 수 있어, in 뒤의 루프에 바로:

예제 설명

for price in [0.99, 2.75, 0.25]:
    print(price)
루프는 다음 숫자들을 화면에 출력해:
0.99
2.75
0.25

리스트에는 어느 타입의 객체든 나열할 수 있어:

예제 설명

for data in [0.99, "apple", -1, True]:
    print(data)
                
루프는 다음 문자열들을 화면에 출력해:
0.99
apple
-1
True
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION