웹사이트 검색

Python for 루프 [쉬운 예제 포함]


Python의 for 루프는 반복 함수입니다. 목록과 같은 시퀀스 개체가 있는 경우 for 루프를 사용하여 목록에 포함된 항목을 반복할 수 있습니다.

for 루프의 기능은 다른 여러 프로그래밍 언어에서 보는 것과 크게 다르지 않습니다.

이 기사에서는 Python for 루프를 자세히 살펴보고 목록, 튜플 등을 포함한 다양한 시퀀스를 반복하는 방법을 배웁니다. 또한 break 및 continue 문을 사용하여 루프의 흐름을 제어하는 방법을 배웁니다.

Python for 루프의 기본 구문

Python에서 for 루프의 기본 구문은 아래에 언급된 것과 유사합니다.

for itarator_variable in sequence_name:
	Statements
	. . .
	Statements

Python for 루프의 구문을 더 잘 설명하겠습니다.

  • 문의 첫 번째 단어는 for 루프의 시작을 나타내는 "for\ 키워드로 시작합니다.
  • 그런 다음 시퀀스를 반복하고 다양한 기능을 수행하기 위해 루프 내에서 사용할 수 있는 반복자 변수가 있습니다.
  • 다음은 Python의 "in\ 키워드로 반복자 변수가 시퀀스 내의 요소를 반복하도록 지시합니다.
  • 마지막으로 리스트, 튜플 또는 다른 종류의 반복자가 될 수 있는 시퀀스 변수가 있습니다.
  • 루프의 문 부분은 반복자 변수를 가지고 놀고 다양한 기능을 수행할 수 있는 곳입니다

1. for 루프를 사용하여 문자열의 개별 문자를 인쇄합니다.

파이썬 문자열은 일련의 문자입니다. 프로그래밍 응용 프로그램 내에서 문자열의 문자를 개별적으로 검토해야 하는 경우 여기에서 for 루프를 사용할 수 있습니다.

그것이 당신을 위해 작동하는 방법은 다음과 같습니다.

word="anaconda"
for letter in word:
	print (letter)

산출:

a
n
a
c
o
n
d
a

이 루프가 작동하는 이유는 Python이 문자열 전체를 보는 대신 "문자열\을 일련의 문자로 간주하기 때문입니다.

2. for 루프를 사용하여 Python 목록 또는 튜플을 반복합니다.

리스트와 튜플은 반복 가능한 객체입니다. 이제 이러한 개체 내의 요소를 반복하는 방법을 살펴보겠습니다.

words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:
	print (word)

산출:

Apple
Banana
Car
Dolphin

이제 계속해서 여기에서 튜플의 요소에 대해 반복 작업을 수행해 보겠습니다.

nums = (1, 2, 3, 4)

sum_nums = 0

for num in nums:
    sum_nums = sum_nums + num

print(f'Sum of numbers is {sum_nums}')

# Output
# Sum of numbers is 10

3. Python for 루프 중첩

다른 for 루프 안에 for 루프가 있으면 중첩 for 루프라고 합니다. 중첩된 for 루프에는 여러 가지 응용 프로그램이 있습니다.

위의 목록 예를 고려하십시오. for 루프는 목록에서 개별 단어를 인쇄합니다. 하지만 대신 목록에 있는 각 단어의 개별 문자를 출력하려면 어떻게 해야 할까요?

이것은 중첩된 for 루프가 더 잘 작동하는 곳입니다. 첫 번째 루프(부모 루프)는 단어를 하나씩 검토합니다. 두 번째 루프(자식 루프)는 각 단어의 문자를 반복합니다.

words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:
        #This loop is fetching word from the list
        print ("The following lines will print each letters of "+word)
        for letter in word:
                #This loop is fetching letter for the word
                print (letter)
        print("") #This print is used to print a blank line

산출

4. range() 함수가 있는 Python for 루프

내장 함수. 특정 횟수 동안 for 루프를 실행하거나 출력할 개체 범위를 지정해야 하는 경우 range 함수가 정말 잘 작동합니다. 숫자 1, 2 및 3을 인쇄하려는 다음 예를 고려하십시오.

for x in range(3):
    print("Printing:", x)
	
# Output

# Printing: 0
# Printing: 1
# Printing: 2

범위 기능은 또한 시작 및 중지와 별도로 다른 매개 변수를 사용합니다. 단계 매개변수입니다. 범위 기능에 각 카운트 사이에 건너뛸 숫자 수를 알려줍니다.

아래 예에서는 숫자 3을 단계로 사용했으며 출력 숫자가 이전 숫자 + 3임을 알 수 있습니다.

for n in range(1, 10, 3):
    print("Printing with step:", n)
	
# Output

# Printing with step: 1
# Printing with step: 4
# Printing with step: 7

5. for 루프를 사용한 break 문

break 문은 for 루프를 조기에 종료하는 데 사용됩니다. 특정 조건이 충족되면 for 루프를 중단하는 데 사용됩니다.

숫자 목록이 있고 숫자가 있는지 확인하고 싶다고 가정해 보겠습니다. 숫자 목록을 반복할 수 있으며 숫자가 발견되면 나머지 요소를 계속 반복할 필요가 없기 때문에 루프에서 빠져나옵니다.

이 경우 for 루프와 함께 Python if else 조건을 사용합니다.

nums = [1, 2, 3, 4, 5, 6]

n = 2

found = False
for num in nums:
    if n == num:
        found = True
        break

print(f'List contains {n}: {found}')

# Output
# List contains 2: True

6. for 루프를 사용한 continue 문

for 루프 내에서 continue 문을 사용하여 특정 조건에 대한 for 루프 본문의 실행을 건너뛸 수 있습니다.

숫자 목록이 있고 양수의 합을 인쇄하고 싶다고 가정해 보겠습니다. continue 문을 사용하여 음수에 대한 for 루프를 건너뛸 수 있습니다.

nums = [1, 2, -3, 4, -5, 6]

sum_positives = 0

for num in nums:
    if num < 0:
        continue
    sum_positives += num

print(f'Sum of Positive Numbers: {sum_positives}')

6. else 블록이 있는 Python for 루프

Python for 루프와 함께 else 블록을 사용할 수 있습니다. else 블록은 for 루프가 break 문에 의해 종료되지 않은 경우에만 실행됩니다.

모든 숫자가 짝수인 경우에만 숫자의 합을 출력하는 함수가 있다고 가정해 보겠습니다.

홀수가 있는 경우 break 문을 사용하여 for 루프를 종료할 수 있습니다. for 루프가 정상적으로 실행될 때만 출력되도록 else 부분에 합계를 출력할 수 있습니다.

def print_sum_even_nums(even_nums):
    total = 0

    for x in even_nums:
        if x % 2 != 0:
            break

        total += x
    else:
        print("For loop executed normally")
        print(f'Sum of numbers {total}')


# this will print the sum
print_sum_even_nums([2, 4, 6, 8])

# this won't print the sum because of an odd number in the sequence
print_sum_even_nums([2, 4, 5, 8])

# Output

# For loop executed normally
# Sum of numbers 20

결론

Python의 for 루프는 다른 프로그래밍 언어와 매우 유사합니다. for 루프와 함께 break 및 continue 문을 사용하여 실행을 변경할 수 있습니다. 그러나 Python에서는 for 루프에서도 선택적 else 블록을 가질 수 있습니다.

위의 튜토리얼에서 흥미로운 아이디어를 얻었기를 바랍니다. 질문이 있으시면 아래 의견에 알려주십시오.