分享
Python3
输入“/”快速插入内容
Python3
用户2352
用户2352
5月23日修改
1.异常
1.1 异常的概念
程序因客观问题不可以正常运行
异常处理参考代码:
代码块
Python
class MyError(Exception): #1.定义自定义异常
pass
try: # 试试图,可能出现问题的代码
n1 = int(input())
n2 = int(input())
# 用户输入一个不合理或不正确的数据
print(n1/n2)
# 如果被除数是10,触发自定义异常
if n1 == 10: #2.判断异常的条件
raise MyError("这是一个自定义异常!") # 3.抛异常
except ZeroDivisionError: # 除数不为0的异常
print("注意:不能输入除数为0")
except ValueError:
print("注意:您输入的不是数值")
except MyError as e: # 4.捕获异常
print(e) # 输出: 这是一个自定义异常!
else:
print("没有发生异常,保存成绩。")
finally:
print("不管有没有异常,都执行。")
1.2 异常类型
•
内置异常
•
:Python定义了多种内置异常,如:
◦
ValueError
:参数类型正确,但值不合适。
◦
TypeError
:操作或函数应用于不适当类型的对象。
◦
IndexError
:序列索引超出范围。
◦
KeyError
:访问字典时,指定的键不存在。
◦
ZeroDivisionError
:尝试除以零。
◦
FileNotFoundError
:文件未找到。
异常处理练习题
以下练习题结合小学生认知特点,用生活化场景设计,难度由浅入深,涵盖异常处理核心基础知识点(异常概念、try-except结构、常见异常类型)。
一、选择题(每题只有一个正确答案)
1.
小明写了一段Python代码:
print(10 / 0)
,运行后程序报错了,这个错误属于哪种异常?()
A. 语法错误 B. 名称错误 C. 除零错误 D. 类型错误
2.
关于Python的异常处理,下列说法正确的是?()
A. 异常发生后程序一定会直接崩溃,无法继续运行
B.
try-except
语句可以捕获并处理程序运行时的异常
C. 只要写了
try-except
,程序就永远不会报错
D.
except
后面只能写一种异常类型
3.
小红想让程序在“输入的不是数字”时提示“请输入正确的数字”,以下代码最合适的是?()
A.
代码块
Python
try:
num = int(input("请输入数字:"))
except:
print("请输入正确的数字")