🐸

安全护盾

Python 基础python-architect-08-shield
奖励: 80 XP
|

我们已经学会了识别错误,但如何防止它们导致程序崩溃呢?

想象 Hoppy 正在穿过一片雷区。与其祈祷没有地雷,不如给 Hoppy 装备一个 护盾 (Shield)。如果地雷爆炸了,护盾会吸收伤害,Hoppy 可以继续前行。

tryexcept 咒语

这道咒语由两部分组成:

  1. try (尝试):“尝试做这件危险的事情。”
  2. except (除了/捕获):“如果失败/崩溃了,就执行这里的方案 B,而不是直接挂掉。”
try:
  # 危险代码
  print(1 / 0)
except:
  # 备用方案
  print("除以零错误被挡下了!")
1
展开护盾

loot = open_chest(13) 这行代码放进 try: 块中。别忘了缩进!

2
处理陷阱

添加一个 except: 块。在里面打印 "Shield blocked the trap!"

3
运行

运行代码。你不会看到吓人的红色报错信息,而是会看到你自定义的安全消息。

没有 try/except,错误会立即终止程序。有了它,你的程序即使发生事故也能继续运行!

参考答案
点击展开
参考答案:
try:
  loot = open_chest(13)
  print("Loot found: " + loot)
except:
  print("Shield blocked the trap!")
高级技巧
想更进一步?点击展开

F. 护盾机制

  • 不要滥用护盾:只在通过 可能 崩溃的代码周围使用 try/except(例如读取文件、网络请求或用户输入)。
  • 沉默是危险的:如果你在 except: 里什么都不做(不打印),你可能会意把真正的 Bug 给藏起来。记得总是记录点什么!
Loading...
终端输出
Terminal
Ready to run...