python - 如何忽略 Python 中所有潜在的异常?

标签 python python-3.x exception resiliency

我正在用 Python 编写自定义备份脚本。有时 mkdir 函数或打印函数或任何函数由于各种原因而失败。这样的异常会停止整个脚本并在中间停止备份,这非常令人沮丧。到目前为止,我已经通过添加 try: ... except: ... 语句并正确管理这些异常来解决这些问题。但是,有一天某些其他语句或函数也可能会由于尚未触发的某些其他原因而引发异常。

有没有办法告诉脚本继续无论如何?相当于将代码的每个语句包装在 try: ... except: pass 子句中?当然,日志会更好。

我注意到,当使用 Tkinter 等 GUI 工具包进行编程时,即使出现异常,应用程序也会继续运行。有没有可能用控制台来完成这种事情?

最佳答案

实际上有一个模块可以做到这一点:https://github.com/ajalt/fuckitpy .

虽然明明是开玩笑写的。我无法想象做这样的事情是个好主意的情况。天哪,我不敢相信我什至建议将其作为解决方案。

您应该做的是确定哪些代码行会产生什么样的错误,并正确处理这些错误。实际上只有这么多地方会发生错误——主要是在与外部系统交互时,包括文件系统、网络、用户输入等。请记住,实际失败通常比继续“工作”和弄乱你的数据、文件等要好在。异常是有原因的,它们不是 Guido 恶意的结果。

关于python - 如何忽略 Python 中所有潜在的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33860705/

相关文章:

python - 在Python中使用finally语句打印出我已经循环了多少次

python - 在正数前附加一个加号

python - 使用 python 3.6 异步的 UDP 代理服务器

exception-handling - 包装异常

python - 无法在 Google 云端硬盘文件夹中创建虚拟环境

python - 导入错误: cannot import name uuid4

python - 想要使用实际位置和字母位置的总和为 python 中的数据框中的列创建分数

python - 使用 String upper() 转换单词对某些字母不起作用?

C#(不是 ASP/MVC/WinForms)——捕获类中的所有异常

c++ - 二维矩阵 STATUS_ACCESS_VIOLATION 错误