Hoppy 正在驾驶飞艇,突然……警报大作!控制面板闪烁着红光。
“警告!代码完整性受损!”
为了拯救飞艇,我们需要理解它 为什么 会崩溃。错误 (Errors) 不是失败,而是线索。
崩溃的种类
就像机器会以不同的方式损坏一样,代码也有不同的错误类型:
- SyntaxError (语法错误):你违反了语言的规则(就像说话语法不通,漏了标点)。
- NameError (命名错误):你试图使用不存在的东西(就像呼叫一个不存在的人)。
- TypeError (类型错误):你试图组合不匹配的东西(就像把文字加到数字上)。
# SyntaxError (漏了冒号) if True pass # NameError (拼写错误) print(x) # x 没有定义 # TypeError (文本与数字相加) "score: " + 100
1
修复语法错误 (SyntaxError)
greet 函数定义少了一个冒号 :。请加上它。
2
修复命名错误 (NameError)
变量 message 已经定义了,但在打印时写成了 mesage。请修正这个拼写错误。
3
修复类型错误 (TypeError)
我们不能直接把字符串 "Power level: " 和整数 9000 相加。请使用 str(9000) 将数字转换为字符串。
仔细阅读“水晶球”(终端)的输出。它会准确地指出崩溃发生的行号!
参考答案点击展开点击收起
点击展开点击收起
参考答案:
def greet(name):
print("Welcome, " + name) # 修复 SyntaxError:加上了冒号
message = "System Online" # 修复 NameError:修正了变量名拼写
print(message)
# 修复 TypeError:将数字转换为字符串
print("Power level: " + str(9000))高级技巧想更进一步?点击展开点击收起
F. 调试的智慧
- 读懂错误名称:它通常直接告诉你哪里出了问题。
- 检查行号:错误信息会告诉你去哪里找问题(例如
line 5)。 - 保持冷静:即使是顶级的软件架构师,每天也会写出崩坏的代码。
Loading...
终端输出
Terminal
Ready to run...