>  기사  >  백엔드 개발  >  예외 없이 Python에서 중첩 루프를 끊는 방법은 무엇입니까?

예외 없이 Python에서 중첩 루프를 끊는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-03 20:56:29211검색

How to Break Out of Nested Loops in Python Without Exceptions?

예외 없이 중첩 루프 해제

Python 및 기타 여러 프로그래밍 언어에서 중첩 루프를 해제하는 것은 지루한 작업이 될 수 있습니다. 예외를 발생시키는 것은 일반적인 접근 방식이지만 항상 가장 우아하거나 효율적인 솔루션은 아닙니다.

예외를 사용하지 않고 중첩 루프에서 벗어날 수 있는 다른 방법이 있습니다. 한 가지 접근 방식은 break 문과 else 문을 함께 사용하는 것입니다. 다음 코드를 고려해보세요.

<code class="python">for x in range(10):
    for y in range(10):
        print(x * y)
        if x * y > 50:
            break
    else:
        continue  # only executed if the inner loop did NOT break
    break  # only executed if the inner loop DID break</code>

이 코드에서 x * y > 중첩 루프 내부에서 50을 만나면 즉시 내부 루프에서 빠져나옵니다. 그러나 외부 루프를 계속하기 전에 내부 루프와 연결된 else 블록이 실행됩니다. 이렇게 하면 계속 진행하기 전에 필요한 정리나 추가 작업을 수행할 수 있습니다.

다음 예에서 볼 수 있듯이 더 깊은 중첩 수준에도 동일한 원칙을 적용할 수 있습니다.

<code class="python">for x in range(10):
    for y in range(10):
        for z in range(10):
            print(x, y, z)
            if (x * y * z) == 30:
                break
        else:
            continue
        break
    else:
        continue
    break</code>

이 접근 방식은 중첩 루프를 벗어나는 보다 구조화되고 직관적인 방법을 제공합니다. break 및 else 문을 활용하면 예외에 의존하지 않고 프로그램 흐름을 보다 효과적으로 제어할 수 있습니다.

위 내용은 예외 없이 Python에서 중첩 루프를 끊는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.