Skip to content
📌知识点小结
  • 报错不是失败,而是程序在告诉你“哪一行、出了什么问题”,要学会读它。
  • 读报错顺序:先看最后一行(错误类型+信息),再向上看是哪个文件、哪一行触发。
  • 常见错误:SyntaxError 语法、NameError 名字未定义、TypeError 类型不对、ValueError 值非法、IndentationError 缩进。
  • 复制关键报错去搜索/查文档,往往能快速定位。
  • 安全复现里报错是常态,关键是把报错转化为下一步排查方向。
自测一下

0.32 怎么看懂报错信息

第〇篇「零基础预科」免费。新手最怕一屏红字,其实报错是最好的老师——它把问题位置和原因都写给你了。

一、报错在说什么

一段典型报错:

Traceback (most recent call last):
  File "detect.py", line 10, in <module>
    print(urll)
NameError: name 'urll' is not defined

读法分两部分:

  1. 上面 Traceback:调用经过的文件和行号(问题在哪);
  2. 最后一行错误类型 + 说明(出了什么事)——这是首先要看的。

二、常见错误类型速查

错误常见原因例子
SyntaxError语法写错(少括号/冒号/引号)if x 没冒号
IndentationError缩进错误混用空格/Tab、层级乱
NameError名字未定义/拼错print(urll)
TypeError类型不支持该操作"10" + 5
ValueError值合法类型但内容非法int("abc")
IndexError / KeyError列表下标越界 / 字典键不存在arr[9]d["x"]
FileNotFoundError文件路径不对/文件不存在打开错路径
ModuleNotFoundError库没装/模块名错未 pip install

三、排查四步法

  1. 看类型和最后一行:先定性;
  2. 找行号:回到那一行仔细看;
  3. 最小复现 + print:把相关变量打印出来看实际值;
  4. 复制关键信息检索:用"错误类型 + 关键信息"查文档/搜索,往往是常见坑。

四、安全复现中的报错

  • 连不上目标:ConnectionRefusedError / 超时 → 靶场没起、端口不对、IP 错;
  • 模块缺失:ModuleNotFoundError: requestspip install requests
  • 权限不足:Permission denied → 加 sudo / 检查文件权限;
  • 漏洞没复现成功时,报错和响应内容就是线索,对照原理逐步定位,而不是反复重跑同一条命令。

五、心态

  • 报错说明程序在正常反馈,不是你"不行";
  • 资深工程师不是不犯错,而是能快速读懂报错、定位问题
  • 每次解决一个报错,把原因记一笔,同类问题会越来越快。

六、本篇小结

  • 先看最后一行(类型+信息),再向上找文件行号。
  • 常见:Syntax/Indentation/Name/Type/Value/Index/Key/FileNotFound/ModuleNotFound。
  • 排查:定性→定位行→print 检查→检索关键信息。
  • 把报错当线索,逐步对照原理排查。

下一篇 0.33 讲怎么高效提问,让别人愿意且能快速帮到你。