try:
print("Hello")
print(1 / 0)
except ZeroDivisionError:
print("Divided by zero")
finally:
print("This code will run no matter what")
try는 오류가 생길 것으로 예상되는 코드를 집어넣고
except는
except 오른쪽에 정의된 오류가 발생했을 시에 실행된다.
혹은 except의 값을 정의하지 않으면 모든 에러가 발생했을 때, except의 코드를 실행한다.
finally는
try 하단의 코드, 혹은 에러가 있을 시에는 except까지 모두 시행한 이후에,
그 내부의 코드를 실행한다.
try:
print(1 / 0)
except ZeroDivisionError:
raise ValueError
해당 코드에서는
오류 두 개를 모두 볼 수 있다.
그 이유는 다음에서 알 수 있다.
try:
num = 5 / 0
except:
print("An error occurred")
raise
except 블록에서 raise를 하면 except에 거린 오류가 무엇이던지 다시 raise 한다.
assert
print(1)
assert 2 + 2 == 4
print(2)
assert 1 + 1 == 3
print(3)
두 번째 assert에서 오른쪽 값이 False기 때문에 오류를 raise함.
함수의 input이나 output을 sanitize하는 데에 쓰일 수 있다.
'길 > Python' 카테고리의 다른 글
String Functions (0) | 2021.02.11 |
---|---|
dic.get(key [,default]) (0) | 2021.02.11 |
List Functions (0) | 2021.02.10 |
not sth in list / sth not in list (0) | 2021.02.10 |
True or False and True (0) | 2021.02.10 |