2015-03-31 83 views
1

我正在为在命令窗口中运行的python脚本设置日志文件,以便记录脚本中的所有输入和输出。我使用的是:使用Python的'with open()'写一个日志,我怎样才能写入例外到我的日志?

with open("file.txt") as file: 

,这样它仍然会保存所有如果出现异常它写的文字。

但是我想知道是否有办法让它记录异常呢?基本上写一个最后的消息,然后关闭该文件作为退出功能?

似乎只有一点关于open()本身的文档。但我不确定这意味着它的使用是否有限。

回答

2

为什么不明确地捕获异常并重新抛出:

with open("file.txt") as file: 
    try: 
     <do_something> 
    except Exception as e: 
     file.write(e) 
     raise 

挑战在于,如果该异常是试图写入文件生成。

+0

这很有道理,我理想地希望在初始行添加一些整齐的语法,但是这会在函数中加载很多。写入文件引发异常至少是一个非常明显的问题。这是我正在写给其他人使用的脚本,我担心错误会出现,他们将无法向我解释发生了什么事情,如果我没有添加此代码,日志中也没有记录。 – SuperBiasedMan 2015-04-01 08:19:24

相关问题