我正在为在命令窗口中运行的 python 脚本设置一个日志文件,以便记录脚本的所有输入和输出。我正在使用:
with open("file.txt") as file:
这样,如果发生异常,它仍然会保存所写入的所有文本。
但是我想知道是否有办法让它也记录异常?基本上是写最后一条消息,然后关闭文件作为退出函数?
关于 open() 本身似乎只有一点文档。但我不确定这是否意味着它的使用受到限制。
最佳答案
为什么不显式捕获异常并重新抛出它:
with open("file.txt") as file:
try:
<do_something>
except Exception as e:
file.write(e)
raise
如果异常是通过尝试写入文件生成的,那么挑战就会出现。
关于python - 使用Python的 'with open()'写日志,如何将异常写入日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29370618/