次の(擬似)コードに相当するものをPythonで実装することは可能ですか?
#define DEBUG(topic, msg) LOG_IMPL(Logger.DEBUG, topic, msg)
#define INFO(topic, msg) LOG_IMPL(Logger.INFO, topic, msg)
#define LOG_IMPL(level, topic, msg) if(Logger.level() <= level) { Logger.log(level, topic, msg); }
DEBUG("MyComponent", "What you logging at?")
ここでの利点は、文字列の結合、.format()の呼び出しなど、文字列ログメッセージを評価する必要がないことです。)
更新:
怠惰なロガーメッセージ文字列の評価-これは私の質問に答えるので、この投稿を閉じることに投票します。