异常处理与调试
程序员文章站
2024-03-18 11:25:46
...
1、异常if语句处理(抛异常 错误)
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
division()# 调用函数
运行程序,控制台打印信息:
情况两种:
第一:
非0正常输出
第二:
等0,异常输出:出现报错提示
2、异常if语句处理(无抛异常 错误)
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
try:# 捕获异常
division()# 调用分苹果的函数
except ZeroDivisionError: # 处理异常
print("输入错误:除数不能为0")# 输出错误原因
运行程序,控制台打印信息:
情况两种:
第一:
非0正常输出
等0 输出,无抛异常错误:
3、异常if–except捕获异常
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
try: # 捕获异常
division() # 调用函数
except ZeroDivisionError: # 处理异常
print("\n出错了:除数不能为0!")
except ValueError as e: # 处理ValueError异常
print("输入错误:", e) # 输出错误原因
else: # 没有抛出异常时执行
print("程序执行完成……")
运行程序,两种情况:
1、非0状态,程序执行完成……
2、等0状态,提示:出错了:除数不能为0!
4、if–except–finally语句异常处理
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
try: # 捕获异常
division() # 调用函数
except ZeroDivisionError: # 处理异常
print("\n出错了:除数不能为0!")
except ValueError as e: # 处理ValueError异常
print("输入错误:", e) # 输出错误原因
else: # 没有抛出异常时执行
print("程序执行完成……")
finally: # 无论是否抛出异常都执行
print("释放资源,并关闭")
运行程序,两种情况:
1、非0状态,程序执行完成……
2、等0状态,提示:出错了:除数不能为0!
5、使用raise语句抛出异常
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
if num2 == 0:
raise ValueError("除数不能为0")
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
try: # 捕获异常
division() # 调用函数
except ZeroDivisionError: # 处理异常
print("\n出错了:除数不能为0!")
except ValueError as e: # 处理ValueError异常
print("输入错误:", e) # 输出错误原因
运行程序,两种情况:
1、非0状态,程序正常输出数字
2、等0状态,程序正常输出数字,无抛出错误异常
6、使用assert语句抛出异常
具体代码实现:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
assert num2 != 0, "除数不能为0" # 应用断言调试
result = num1//num2 # 执行除法运算
print(result)
if __name__ == '__main__':
try:
division() # 调用函数
except AssertionError as e: # 处理AssertionError异常
print("\n输入有误:", e)
运行程序,两种情况:
1、非0状态,程序正常输出数字
2、等0状态,程序正常输出数字
上一篇: C代码实现扫雷小游戏
下一篇: 扫雷小游戏
推荐阅读
-
Python异常处理与内置异常(学习笔记)
-
异常处理与调试
-
C语言 cJSON cJSON_Delete 与 cJSON_Free 的区别、如何释放内存、调试内存泄漏方法
-
3 ,登录页面,Servlet 回顾,jdbc 回顾,ajax 回顾 ,FastJson 使用,一些异常的处理
-
《Java编程思想》第十二章 通过异常处理错误
-
java编程思想——第十二章(通过异常处理错误)》
-
有关Java异常处理中包含return语句的try和finally执行顺序的实证 博客分类: Java Java异常处理执行顺序
-
Bash字符串处理(与Java对照) - 1.(字符串)变量声明 博客分类: Bash基础 BashJavaStringdeclarelocal
-
使用 SpringMVC 优雅的处理异常 博客分类: springmvc springmvc
-
断言assert()与调试帮助