Я хочу включить ведение журнала в модуле, но я не хочу, чтобы модуль создавал новый объект / файл журнала, я хочу, чтобы он использовал объект журнала вызывающих абонентов, что бы это ни было, но только если они проходят один , Я знаю, что могу поместить все свои вызовы журнала в блок try, но это неудобно. То, что я наконец-то придумал, похоже, работает, но кажется довольно глупым, и я уверен, что есть лучший способ сделать это.
class MyClass(object):
def __init__(self, arg1, arg2, log=None):
if log == None:
class log(object):
def error(self, msg): pass
def warning(self, msg): pass
def info(self, msg): pass
def debug(self, msg): pass
self.log = log()
else:
self.log = log
self.log.debug('Starting')
Какой лучший способ сделать что-то подобное?
Спасибо!