Python/Python Basic
Python Basic : try ~ except ~ else ~ finally (Error 발생 상황 다루기)
CosmosProject
2021. 6. 26. 18:26
728x90
반응형
Python에서는 try except 구문을 통해 Error가 발생했을 때 어떤 동작을 할지 설정할 수 있습니다.
try syntax
try:
# 가장 먼저 실행할 code block
except:
# try block에서 Error발생 시 실행할 code block
else:
# try block에서 Error가 발생하지 않았을 때 실행할 code block
finally:
# try block에서 Error발생 여부에 상관없이 무조건 실행할 code block
try ~ except 구문의 syntax는 위와 같습니다.
보면 Error가 발생할 때의 모든 경우를 다룰 수 있도록 되어있습니다.
필수 구문은 try ~ except이며 else와 finally는 적지 않아도 됩니다.
try ~ except 구문의 기본적인 예시는 아래와 같습니다.
try:
print('This is try block.')
except:
print('Error occured in try block.')
else:
print('No error')
finally:
print('This is always executed.')
-- Result
This is try block.
No error
This is always executed.
try:
print('This is try block.')
except:
print('Error occured in try block.')
else:
print('No error')
-- Result
This is try block.
No error
try:
raise Exception('Error occured')
print('This is try block.')
except:
print('Error occured in try block.')
else:
print('No error')
finally:
print('This is always executed.')
-- Result
Error occured
Error occured in try block.
This is always executed.
try:
raise Exception('Error occured')
print('This is try block.')
except:
print('Error occured in try block.')
-- Result
Error occured
Error occured in try block.
try:
raise Exception('Error occured')
print('This is try block.')
except Exception as e:
print(e)
또한 발생한 error 정보를 e라는 변수에 담아서 except block에서 사용할 수 있습니다.
try:
print(x)
except NameError:
print('x is not defined')
except:
print('Other error')
except 구문은 한 개가아니라 여러 개를 명시할 수 있습니다.
위 예시처럼 어떤 에러가 발생하는지에 따라 서로 다른 except 구문을 실행하도록 할 수 있습니다.
728x90
반응형