try 异常捕获

最后更新:2026-09-22

try 异常捕获

try 包裹可能抛异常的代码;except 处理异常、finally 清理资源。

分类关键字与语句
类型关键字与语句
Python 版本all

📝 语法

try:
    block
except [ExceptionType [as name]]:
    handler
[finally:
    cleanup]

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

caught: invalid literal for int() with base 10: 'x'
更多实战案例即将上线,敬请期待。

❓ 常见问题

Qtry/except/else/finally 的执行顺序是什么?
A先执行 try 块;若没抛异常,接着执行 else(如果有),最后无论是否异常都执行 finally。若抛了异常,则跳过 else,进入匹配的 except,最后再执行 finally。
Qexcept 后面不写异常类型会怎样?
A它会捕获一切异常,包括 KeyboardInterrupt、SystemExit 这类本不该吞的异常。一般不建议裸 except,应尽量写成 except Exception: 或更具体的类型。
Qtry 块里赋值的变量,except 块里能用吗?
A能。Python 没有块级作用域,只要 try 执行到了赋值那一行,变量在 except、else、finally 以及 try 语句之后都能访问。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏