异常, 指定的是在程序运行时, python解释器遇到一个预期之外的结果
遇到异常后, 程序暂停执行, 并抛出一个异常信息, 这是python解释器自动完成的
异常机制, 有助于程序更加健壮, 和稳定
简单的捕获异常
对于某些可能出错的代码, 可以手动捕获异常
简单捕获语法
try:
可能出错的代码
except:
异常处理逻辑
简单捕获实例
try:
num = int(input("请输入一个整数: "))
except:
print("你的输入非法")
针对性异常捕获
异常是分种类的, 有多种不同类型的异常, 而一段代码中可能出现多种异常, 我们可能需要对不同的异常做不同的处理
针对性异常捕获语法
其中, 最后一行的ex表示异常对象,包含了异常描述
try:
可能出错的代码
except 错误类型1:
错误类型1的处理
except (错误类型2, 错误类型3):
错误类型2, 3的处理
except Exception as ex:
print("异常描述:"+str(ex))
针对性异常捕获实例
try:
num = int(input("请输入一个整数: "))
result = 8/num
print(result)
except ValueError: #错误类型, 看控制台输出的第一个单词
print("请输入整数")
except ZeroDivisionError:
print("除0错误")
except Exception as ex:
print("异常描述:" + str(ex))
完整的异常处理
完整的异常处理, 包括了else, 以及 finally关键字
try:
可能出错的代码
except 错误类型1:
错误类型1的处理
except (错误类型2, 错误类型3):
错误类型2, 3的处理
except Exception as ex:
print("异常描述:"+str(ex))
else:
print("没有异常")
finally:
print("无论是否有异常,都执行")
完整异常处理实例
try:
num = int(input("请输入一个整数: "))
result = 8/num
print(result)
except ValueError: #错误类型, 看控制台输出的第一个单词
print("请输入整数")
except ZeroDivisionError:
print("除0错误")
except Exception as ex:
print("异常描述:" + str(ex))
else:
print("没有异常")
finally:
print("无论是否有异常,都执行")
更多实例在后续的章节中