Python 报错

Python Error Reporting

我最近开始使用 Python 进行开发,我注意到每当我的代码生成运行时错误时,详细信息都会瞬间闪现到输出中,然后程序关闭。有没有办法在发生这种情况时阻止程序关闭或将错误记录到文本文件中?

总结以上评论,您可以:

  • 运行 您的文件来自命令行 python filename.py

  • 使用 python filename.py > output.txt

  • 将错误记录到任何文本文件
  • 使用一个PythonIDE like PyCharm

以上所有内容应该可以帮助您阅读错误堆栈跟踪。

除了评论中的建议都行之有效之外,您始终可以(并且应该始终)使用 logging 模块。您可以快速设置基本的日志记录工具,它允许更改向用户显示的信息级别。

(来自'Python Module of The Week' website)

import logging

LOG_FILENAME = 'logging_example.out'
logging.basicConfig(filename=LOG_FILENAME,
                    level=logging.DEBUG)

logging.debug('This message should go to the log file')

f = open(LOG_FILENAME, 'rt')
try:
    body = f.read()
finally:
    f.close()

print 'FILE:'
print body

您可以记录到不同级别(即信息、警告、调试、错误)并在代码为 运行 时显示这些级别,或者通过设置级别参数 logging.basicConfig() 隐藏它们.

How To Logging

Logging Cookbook