我们已经学会了如何 捕获 错误。但有时,我们需要 制造 它们。
为什么?因为有些事情虽然符合 Python 的语法规则,但违反了我们的飞艇规则。比如试图在没有燃料的情况下起飞。
raise 咒语
raise 关键字允许你手动拉响警报。你可以中止程序并大喊:“出问题啦!”
def enter_club(age):
if age < 18:
# 停止一切!无效!
raise ValueError("Too young!")
print("Welcome.")
1
检查能量
在 check_engine 函数中,写一个 if 语句来检查 energy 是否小于 10。
2
发出警报
在 if 内部,使用 raise ValueError("Energy too low!")。
3
测试系统
运行代码。第二次调用 check_engine(5) 应该会触发你的警报,而我们的 try/except 块会捕获它并打印出警告信息!
你现在是错误的掌控者了。你可以处理它们 (except),也可以创造它们 (raise)。
参考答案点击展开点击收起
点击展开点击收起
参考答案:
def check_engine(energy):
print("Checking engine with energy: " + str(energy))
if energy < 10:
raise ValueError("Energy too low!")
print("Engine stable.")
try:
check_engine(50)
check_engine(5) # 这会触发警报
except ValueError as e:
print("Alarm caught: " + str(e))高级技巧想更进一步?点击展开点击收起
F. 自定义警报
- 你可以使用
raise抛出任何内置错误。 - 专业的 Python 程序使用
raise来发出信号,表示在当前输入下函数无法正常完成工作。
Loading...
终端输出
Terminal
Ready to run...