だから私はPythonでプロジェクトに取り組んでいて、それをpylintと一般的に標準に維持しようとしています。だから、私はソースファイルを持っています(私たちはそれをa.pyと呼びます)
#a.py
import loggingsetup
def foo():
log.info("This is a log message")
しかし、ロギングがどのように見えるかを制御したいので、loggingsetupには次のようなものがあります。
#loggingsetup.py
import logging
logging.root.setLevel(logging.DEBUG)
consoleOut = logging.StreamHandler()
consoleOut.setLevel(logging.INFO)
consoleOut.setFormatter(logging.Formatter("\t"+logging.BASIC_FORMAT))
logging.root.addHandler(consoleOut)
#etc
さて、これは問題なく機能しているようです。予備的な質問として、これがこれを実行する正しい方法であるかどうか、またはコードを構造化する別の方法が望ましいかどうかを尋ねる必要があると思います。
しかし、私の主な質問は、a.pyでpylintを実行すると、loggingsetupから実際にメソッドや関数を呼び出していないため、「unused import--importloggingsetup」のような警告が表示されることです。
loggingsetupの本体を関数として再定義して呼び出すようなこともできますが、それはばかげてエラーが発生しやすいようです(loggingsetupを別の場所からインポートした場合、およびその方法を理解している場合は、2回呼び出すことを心配する必要があります。 pythonはインポートを処理しますが、これは私の現在の設定では問題ではありません)。
明らかにpylintに警告を無視するように指示することもできますが、最初にここで、これが実際には別の方法で処理する必要があるものではないことを確認するように依頼したいと思いました。