私はPythonが初めてです。Vim を Python モードで使用してコードを編集およびテストしていますが、同じコードを複数回実行すると、コードが最初に実行されたときにのみログ ファイルが更新されることに気付きました。たとえば、以下は「testlogging.py」というコードの一部です。
#!/usr/bin/python2.7
import os.path
import logging
filename_logging = os.path.join(os.path.dirname(__file__), "testlogging.log")
logging.basicConfig(filename=filename_logging, filemode='w',
level=logging.DEBUG)
logging.info('Aye')
新しい gvim セッションを開いてこのコードを python-mode で実行すると、「testlogging.log」という内容のファイルが作成されます。
INFO:root:Aye
有望に見えます!しかし、ログ ファイルを削除して pythong モードでコードを再度実行すると、ログ ファイルは再作成されません。この時点で、このような端末でコードを実行すると
./testlogging.py
その後、ログ ファイルが再び生成されます。
Python のドキュメントを確認したところ、ロギング チュートリアル ( https://docs.python.org/2.7/howto/logging.html#logging-to-a-file ) で次の行に気付きました。
非常に一般的な状況は、ログ イベントをファイルに記録することです。次に、それを見てみましょう。新しく開始した Python インタープリターで次のことを試してください。上記のセッションから続行しないでください:
したがって、ログファイルが一度だけ更新されるというこの問題は、コードを2回目に実行したときに同じインタープリターに残っているpython-modeに関係していると思います。だから私の質問は、ロギングモジュールをいじったり、コードに何かを入れてインタープリターをリセットしたり、Pythonモードにリセットするように指示したりすることで、この問題を解決する方法はありますか?
また、ロギングモジュールが機能するために新しく開始されたインタープリターが必要な理由にも興味があります...
事前にご協力いただきありがとうございます。