一、代码如下
# 1.无措处理方案
try:
wage = int(input("请输入您的工资:"))
except ValueError:
pass # 无操作处理
def input_word():
# 主动抛出异常
pwd = input("请输入一个数字:")
# 如果工资长度>=4,返回用户输入的工资
if len(pwd) >= 5:
return pwd
# 如果 < 3 主动抛出异常
print("主动抛出异常")
# 1> 创建异常对象
ex = Exception("数字长度不够")
# 2> raise 主动抛出异常
raise ex
# 提示用户输入密码
try:
print(input_word())
except Exception as result:
print(result)
# 3.finally扫尾工作处理方案
try:
wage = int(input("请输入工资的值: "))
print(20 / wage)
except:
print("发生异常!")
else:
print("执行 else 块中的代码")
finally:
print("执行 finally 块中的代码")
# 4.自定义异常处理案例
x = input('请输入一个三位数:')
y = input('请输入一个两位数数:')
try:
wage = int(x)
if wage < 20:
raise ZeroDivisionError
a = int(y)
if a == 0:
raise ZeroDivisionError
b = wage / a
except ZeroDivisionError:
print('自定义异常处理类')
except ValueError:
print('检查输入字符串是否为可转换为整数。')
except ZeroDivisionError:
print('除以 0 错误。')
else:
print('没有错误。')
finally:
print('程序执行完毕。')
# 5. 常见异常处理
try:
num1 = int(input("请输入一个数字: "))
num2 = int(input("请再输入一个数字: "))
result = num1 / num2
print("结果:", result)
except ValueError as ve:
print(f"数值输入错误: {ve}")
except ZeroDivisionError as zde:
print(f"除数不能为零: {zde}")
# 6. 默认异常处理方案
try:
file = open("不存在的文件.txt", "r")
except Exception as e:
print(f"默认异常处理: {e}")
二、执行结果如下