Pythonインタープリターを終了させてファイルに保存し、画面に出力するすべてのエラーをログに記録する方法を見つけたいと思います。私がこれをやりたい理由は、コードを書いているときに犯すエラーの種類に関する統計を保持し、将来よく犯す間違いを回避する方法を見つけることを目指しているからです.
サブプロセスモジュールを使用してpythonインタープリターのラッパーを作成することで、これを実行しようとしました。基本的に、Python インタープリターを実行し、出力をキャプチャし、解析してファイルに保存し、出力を出力し、matplotlib を使用して要約図を作成します。しかし、ラッパー スクリプトからリアルタイムで出力を取得する際に問題が発生しています。たとえば、実行しているスクリプトが次の場合:
import os
import time
for x in range(10):
print "testing"
time.sleep(10)
そして、p.communicate() で subprocess.Popen() を使用しています。ラッパーは 100 秒待機してから、すべての出力を出力します。ラッパーをできるだけ見えないようにしたいのですが、理想的には、この場合、10 秒ごとに "testing" を出力します。
誰かがこれを行うための良い方法を教えてくれたら、とても感謝しています。
ありがとう!