더북(TheBook)

4.2.9 루프와 else 키워드를 사용한다

else 키워드는 대개 if 키워드와 함께 쓰인다. 하지만 파이썬에서는 루프에서 사용하는 try-except 문법으로 사용될 수 있다.

루프와 함께 사용한 else는 루프가 break 문을 만나서 일찍 빠져나오지 않는 한 루프 종료 시 실행된다.

다음 코드는 2보다 크고 max보다 작거나 같은 숫자 중에 n을 나머지 없이 나눌 수 있는 약수를 찾는다. 약수를 못 찾는 경우 루프가 종료되면서 else 문이 실행된다.

def find_divisor(n, max):
    for i in range(2, max + 1):
        if n % i == 0:
            print(i, 'divides evenly into', n)
            break
    else:
        print('No divisor found')

실행 결과는 다음과 같다.

>>> find_divisor(49, 6)
No divisor found
>>> find_divisor(49, 7)
7 divides evenly into 49
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.