>백엔드 개발 >파이썬 튜토리얼 >파이썬에서 예외를 처리하는 방법

파이썬에서 예외를 처리하는 방법

silencement
silencement원래의
2019-06-24 11:51:073201검색

파이썬에서 예외를 처리하는 방법

Python은 주로 5가지 예외 메커니즘을 각각의 예와 함께 지원합니다.

기본 예외 처리기

s = 'Hello girl!'
print s[100]
print 'continue'

예외에 대해 아무런 예방 조치를 취하지 않으면 프로그램 실행 중에 예외가 발생하면 프로그램이 중단되고 Python의 기본 예외 처리기가 호출되며 예외 정보가 터미널에 출력됩니다. 이 경우 코드의 3번째 줄은 실행되지 않습니다.

try… Except

s = 'Hello girl!'
try:
 print s[100]
except IndexError:
 print 'error...'
print 'continue'

프로그램이 두 번째 문장을 실행할 때 try 문을 찾아 try 문 블록에 들어간 다음 예외가 발생하면 Try 문 레이어에서 그 뒤에 Except 문이 있는지 확인하세요. Except 문이 발견되면 이 사용자 정의 예외 처리기가 호출됩니다. 제외가 예외를 처리한 후 프로그램은 계속 실행됩니다. 이 경우 마지막 두 개의 print 문이 실행됩니다.

out은 비어 있을 수도 있으며 이는 모든 유형의 예외가 포착되었음을 나타냅니다.

try…finally

s = 'Hello girl!'
try:
 print s[100]
finally:
 print 'error...'
print 'continue'

finally 문은 예외 발생 여부에 관계없이 finally의 문이 실행되어야 함을 의미합니다. 그러나 예외 핸들러가 없기 때문에 최종 실행 후 프로그램이 중단됩니다. 이 경우 두 번째 인쇄는 실행되지만 첫 번째 인쇄는 실행되지 않습니다. try 문에 예외가 없으면 세 가지 인쇄가 모두 실행됩니다.

with…as

with open('nothing.txt','r') as f:
 f.read()
 print 2/0
print 'continue'

보통 파일류 스트림 객체를 사용할 때, 사용 후 닫으려면 close 메소드를 호출해야 합니다. , 그것은 매우 번거로운 일입니다. 여기서 with...as 문은 매우 편리한 대안을 제공합니다. open이 파일을 연 후 반환된 파일 스트림 객체를 f에 할당한 다음 with 문 블록에서 사용합니다. with 문 블록이 완료된 후 파일은 자동으로 숨겨집니다.

with 문이나 문 블록에서 예외가 발생하면 기본 예외 처리기가 호출되지만 파일은 여전히 ​​정상적으로 닫힙니다.

이 경우 예외가 발생하고 최종 인쇄가 실행되지 않습니다.

위 내용은 파이썬에서 예외를 처리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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