"""
try:
可能出现异常的语句
except 异常类型1:
出现异常后会自动执行的代码
except 异常类型2:
出现异常后会自动执行的代码
except:
出现未知异常后会自动执行的代码
"""
# 计算器案例练习
try:
a = int(input("请输入数字1:"))
b = int(input("请输入数字2:"))
op1 = input("请输入运算符号:")
if op1 =="+":
print(a + b)
elif op1 == "-":
print(a - b)
elif op1 == "/":
print(a / b)
elif op1 == "*":
print(a * b)
else:
print("运算符号输入不正确")
except ValueError: # 从异常提示中找到错误类型
print("请输入正确的数字")
except ZeroDivisionError:
print("被除数不能为0")
except : # 未知错误处理
print("输入有误")
# **************************************************************
# else:没有异常发生执行的代码
"""
try:
可能出现异常的语句
except:
出现异常后会自动执行的代码
else:
没有异常发生执行的代码
"""
try:
a = int(input("请输入数字1:"))
b = int(input("请输入数字2:"))
op1 = input("请输入运算符号:")
if op1 =="+":
print(a + b)
elif op1 == "-":
print(a - b)
elif op1 == "/":
print(a / b)
elif op1 == "*":
print(a * b)
else:
print("运算符号输入不正确")
except :
print("输入有误")
else:
print("运算完成")
# **************************************************************
# 使用Exception as 捕获未知异常,并将系统提示显示出来
try:
a = int(input("请输入数字1:"))
b = int(input("请输入数字2:"))
print(a / b)
except Exception as result: # 将系统异常作为result显示出来
print(result)
# **************************************************************
# finally 无论是否出现异常都要执行的代码
"""
try:
可能出现异常的语句
except:
出现异常后会自动执行的代码
finally:
无论是否异常都会执行的代码
"""
try:
a = int(input("请输入数字1:"))
b = int(input("请输入数字2:"))
print(a / b)
except:
print("输入有误")
finally:
print("执行完毕")
# **************************************************************
# 异常案例
try:
a = int(input("请输入数字1:"))
b = int(input("请输入数字2:"))
print(a / b)
except ValueError: # 从异常提示中找到错误类型
print("请输入正确的数字")
except ZeroDivisionError:
print("被除数不能为0")
except Exception as result: # 将系统异常作为result显示出来
print("未知异常:" + result)
else:
print("运算无误")
finally:
print("执行完毕")
# **************************************************************
# 主动抛出异常:raise Exception
# 且只要有异常未被捕获,代码就会被终止
try:
a = input("请输入1:")
b = input("请输入2:")
print(a + b)
raise Exception("主动抛出的异常:") # 这是系统主动抛出异常
except Exception as result:
print("是否可以输出") # 这里不会输出,因为有主动异常发生,且未捕捉
# ***********************************************************************************
"""
手动输入变量name与age的值,age为数字
当name中有数字,抛出异常
当age小于等于0,抛出异常
捕捉异常
"""
# 设计一个函数,若str1中有数字返回true,否则返回false
def digital(str1):
for n in str1:
if n >= "0" and n <= "9":
return True
return False
try:
name = input("请输入姓名:")
if digital(name):
raise Exception("姓名中不允许含有数字") # 主动抛出异常
age = int(input("请输入年龄:"))
if age <= 0:
raise Exception("年龄不可小于等于0") # 主动抛出异常
except Exception as result: # 捕获异常
print(result)
python捕获异常
最新推荐文章于 2024-01-16 17:52:29 发布