我在python中有三个类,它们在不同的线程中运行.我想从所有类输出到同一个文件.现在我在主类中创建了输出方法,并通过构造函数将其传递给其他类.有没有办法更好地处理它?除了使用contructors之外,我如何在类之间传递记录器?
也许python支持类似Java中的静态方法,所以我可以在所有三个类中编写类似Logger.info(message)的东西?
另一种方法可能是将全局sys.stdout重定向到文件,即指定
logger = open('debug.txt', 'w')
sys.stdout = logger
Run Code Online (Sandbox Code Playgroud)
然后在所有类中使用sys.stdout调用.
你怎么看?