錯誤與異常處理:
a=1
b=10
try:
print(a)
except (ValueError,NameError) as err:
print("異常信息: {0}".format(err))
else: # 執行無異常,則執行else
print("執行成功,中間無異常出現!")
finally: # 不管try是否執行異常,均會執行
print('這句話,無論異常是否發生都會執行。')
# raise手動觸發拋出異常,異常參數必須爲Exception或者其子類,例如ValueError
raise ValueError("手動觸發異常: {0}".format("b=%d" % b))
1
執行成功,中間無異常出現!
這句話,無論異常是否發生都會執行。
Traceback (most recent call last):
File "D:/Python/PythonWorkspace/PyException.py", line 16, in <module>
raise ValueError("手動觸發異常: {0}".format("b=%d" % b))
ValueError: 手動觸發異常: b=10
斷言:
- assert True # 條件爲 true 正常執行
- assert False # 條件爲 false 觸發異常
assert 1==1
print("assert True # 條件爲 true 正常執行!")
assert 1==2
print("assert false # 條件爲 false 拋出異常!")
Traceback (most recent call last):
File "D:/Python/PythonWorkspace/PyException.py", line 6, in <module>
assert 1==2
AssertionError
assert True # 條件爲 true 正常執行!