AttributeError または TypeError を決してスローしないクラスを実装する最良の方法は何ですか?
アイデアは、私はこのようなクラスを持っているということです
class A():
def __init__(self):
self.logger = NeverThrowClass()
def set_logger(self, logger):
self.logger = logger
def do_stuff(self)
self.logger.info('Stuff is being done.')
pass
特定のクラス メソッドがクラス化されるたびに、何かをログ ファイルに書き込みます。ただし、ログ ファイルが指定されていない場合でも、クラス メソッドを機能させたいと考えています。にアクセスするたびに例外をキャッチできることはわかっself.logger
ていますが、デフォルトのlogger
属性をとにかく呼び出しを受け入れる魔法のようなNeverThrowClass()
ものにし、丁寧に何もせず、None
クラスが引き続き正常に機能するように属性値を返すようにしたいと思いますロガーが指定されているかどうか。