0

すべてのエラーがテキスト ファイルに保存されていることを確認するための助けを探していますが、例外処理がどの部分を見なければならないかを定義せずに、すべてのエラーがファイルに保存されるようにする方法を見つけることができないようです。

私はhttp://docs.python.org/2/tutorial/errors.htmlを調べましたが、私のニーズに合ったものを見つけることができません:/

これを行う簡単な方法があるはずです。前もって感謝します-Hyflex

4

2 に答える 2

4
import sys
sys.stderr = open("some_log.txt","wb")

少なくとも...

>>> import StringIO
>>> import sys
>>> s = StringIO.StringIO()
>>> sys.stderr = s
>>> 5=7
>>> 5/0
>>> s.seek(0)
>>> s.read()
'  File "<stdin>", line 1\nSyntaxError: can\'t assign to literal\nTraceback (mos
t recent call last):\n  File "<stdin>", line 1, in <module>\nZeroDivisionError:
integer division or modulo by zero\n'
于 2013-06-21T23:31:36.967 に答える
1

プログラム全体をベースに埋め込むことができますException

try:
    main()                          # Entry point of your program
except Exception as e:
    str_e = "Error({0}): {1}".format(e.errno, e.strerror)
    # Print "str_e" to file
    with open("errlog.txt", "a") as myfile:
        myfile.write(str_e)
于 2013-06-21T23:35:40.313 に答える