Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬 시도 예외:단계별 가이드

파이썬의 try…except 문은 예외를 포착합니다. "try" 문에 작성된 오류에 대한 코드를 테스트하는 데 사용됩니다. 오류가 발생하면 "제외" 블록의 내용이 실행됩니다.


Python에서 Try 및 예외를 사용하는 방법

프로그램의 나머지 부분을 실행하기 전에 특정 코드 블록을 테스트하여 제대로 작동하는지 확인할 수 있습니다. 예를 들어, 프로그램에 대해 많은 양의 새 코드를 작성했다고 가정해 보겠습니다. 나머지 프로그램을 실행하기 전에 작동하는지 확인하는 것이 좋습니다.

try...except 블록을 사용하면 코드를 테스트하고 예외가 발생한 경우 이를 처리할 수 있습니다. try...except 블록의 결과에 따라 추가 코드를 실행하기 위해 finally 및 else 문을 추가할 수 있습니다.

이 튜토리얼에서는 파이썬에서 try와 except를 사용하는 방법에 대해 이야기할 것입니다. try 및 except 사용을 빠르게 시작할 수 있도록 예제를 참조하겠습니다.

Python 오류 및 예외 복습

Python에는 구문 오류와 예외라는 두 가지 유형의 오류가 발생할 수 있습니다.

Python 구문 오류는 잘못된 구문을 사용할 때 반환되는 오류 유형입니다. 예를 들어, while True라고 쓰면 루프 끝에 콜론이 없으면 프로그램에서 오류를 보고합니다.

구문 오류가 발생하면 파일 이름, 줄 번호 및 오류가 있을 수 있는 위치에 대한 표시기를 반환합니다.

예외는 코드에 올바른 구문이 있지만 여전히 문제가 있는 오류 유형입니다. 많은 유형의 예외가 있지만 가장 흔히 접하게 되는 예외는 ArithmeticError, ImportError, ZeroDivisionError, NameError 및 TypeError입니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

Python try… 문 제외

Python try...except 문은 "try" 문 아래에서 코드를 실행합니다. 이 코드가 성공적으로 실행되지 않으면 프로그램은 오류를 일으킨 줄에서 멈추고 "제외" 코드가 실행됩니다.

try 블록을 사용하면 코드 블록에 오류가 있는지 테스트할 수 있습니다. 예외 블록을 사용하면 사용자 정의 응답으로 오류를 처리할 수 있습니다.

다음은 try...except 블록의 구문입니다.

try:
	yourcode...
except:
	yourcode...

모든 유효한 Python 코드를 try 또는 except 문으로 묶을 수 있습니다.

시도…파이썬 예제 제외

다음은 try...except 블록 구문의 예입니다.

try:
	print(ourVariable)
except:
	print('Error returned')

위의 예에서는 Python 변수 ourVariable을 선언하지 않았습니다. 하지만 try 블록에서 사용하려고 합니다.

코드에 try...except 블록이 없으면 프로그램은 오류 메시지를 반환합니다. 디버깅하는 동안 오류 메시지가 표시되는 것은 괜찮지만 일반 사용자는 오류 메시지가 표시되면 혼란스러워할 수 있습니다.

try...except 블록이 있기 때문에 코드는 오류가 발생했을 때 무엇을 해야 하는지 알고 있습니다.

다음은 코드의 결과입니다.

Error returned

try...except 블록을 사용하면 예외를 정상적으로 처리할 수 있습니다. Python의 로깅 모듈과 같은 패키지를 사용하여 로그 파일에 예외를 저장하는 것과 같은 기능을 구현할 수도 있습니다. 이렇게 하면 발생한 예외를 추적할 수 있습니다.

try…except Python:여러 개의 except 문

제외를 반복할 수 있습니다. 여러 예외를 테스트하기 위해 다양한 유형의 오류에 대한 명령문. 이것은 많은 예외 중 하나가 발생할 수 있다고 의심되지만 어떤 예외가 발생하게 될지 확신할 수 없는 경우에 유용합니다.

다음은 NameError를 찾는 try...except 블록의 예입니다.

try:
	print(ourVariable)
except NameError:
	print('ourVariable is not defined')
except:
	print('Error returned')

이 경우 코드는 ourVariable을 반환합니다. 이(가) 정의되지 않았습니다 코드가 NameError를 반환하기 때문입니다. 테스트 중인 코드에 따라 ZeroDivisionError 또는 OSError와 같은 오류를 더 추가할 수 있습니다.

예를 들어 파일을 열려면 IOError 및 FileNotFoundError를 확인할 수 있습니다. 여러 예외를 확인하면 참조하는 파일을 여는 동안 오류가 발생하더라도 프로그램이 계속 실행될 수 있습니다.

시도…파이썬 제외:마지막으로

그러나 오류가 반환된 경우와 오류가 발견되지 않은 경우 모두 메시지를 인쇄하도록 하려면 어떻게 해야 할까요? 드디어 블록이 들어옵니다. finally 절을 정의하면 try...except 블록에서 오류가 발생하는지 여부에 관계없이 해당 내용이 실행됩니다.

마지막으로 블록은 코드가 실행되었음을 나타내는 유용한 지표입니다. 코드가 성공적으로 실행되었는지 여부를 구분하지 않기 때문에 일반적으로 사용되지 않습니다.

다음은 예입니다.

try:
	print(ourVariable)
except:
	print('ourVariable is not defined')
finally:
	print('Code has been run.')

우리 프로그램은 다음을 반환합니다:

ourVariable is not defined
Code has been run.

제외 내의 코드 코드에 예외가 있기 때문에 블록이 실행됩니다(ourVariable이 정의되지 않음). 마침내 내의 코드 코드 실행이 완료되었기 때문에 절도 실행됩니다.

시도…파이썬 제외:Else

else 절을 ​​사용하여 예외가 발생하지 않은 경우에 실행될 코드를 정의할 수 있습니다. 예를 들어 프로그램이 성공적으로 실행되었음을 사용자에게 알리는 데 사용할 수 있습니다.

게임에 대한 등록 시스템을 만들고 있다고 상상해 보십시오. 사용자가 선택한 사용자 이름이나 이메일 주소가 유효한지 확인하기 위해 try…except…else 블록을 포함할 수 있습니다. 그렇지 않은 경우 예외 절이 실행됩니다. 사용자 이름 또는 이메일 주소가 유효하면 else 블록이 실행될 수 있습니다.

다음은 예입니다:

try:
	print('Test')
except:
	print('There is a problem.')
else:
	print('There are no problems.')

코드는 다음을 반환합니다.

There are no problems.

우리의 Python 프로그램에는 예외가 없습니다. 결과적으로 else 내의 코드는 문이 실행됩니다. 기타 문은 코드에 문제가 없다는 메시지를 출력합니다.

이 튜토리얼에서 Repl.it 보기:



결론

try...except 블록을 사용하면 Python 코드를 쉽게 디버그할 수 있습니다. 프로그램은 "try" 블록에서 코드를 실행하려고 합니다. 이것이 실패하면 "제외" 블록이 실행됩니다. "finally" 문의 코드는 "except" 블록의 실행 여부와 상관없이 실행됩니다.

이 튜토리얼에서는 try…except 블록을 사용하는 방법을 분류했습니다. else 사용 방법에 대해 논의했습니다. 및 제외 예외 처리를 사용자 정의합니다.

이러한 블록은 기존 코드를 테스트하거나 새 코드를 작성할 때 유용할 수 있습니다. 프로그램이 올바르게 실행되고 오류가 없는지 확인합니다.

더 많은 Python 학습 리소스는 포괄적인 Python 학습 방법 가이드를 확인하세요.