簡體   English   中英

使用Python的“ with open()”編寫日志,如何向日志寫入異常?

[英]Using Python's 'with open()' To Write a Log, How Can I Write Exceptions to my Log?

我正在為在命令窗口中運行的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

如果異常是嘗試寫入文件的生成器,那么挑戰就來了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM