我试图在我的python代码执行的运行时删除StreamHandler。
if (False == consoleOutput):
lhStdout = log.handlers[0] # stdout is the only handler initially
log.removeHandler(lhStdout)
这很好用。但我不喜欢我们假设stdout是处理程序数组中的第一个处理程序。有没有办法查询处理程序类以查找它是什么类型?像这样的东西
for handler in log.handlers
if (handler.type == StreamHandler())
<...>
答案 0 :(得分:1)
你要找的是拼写:if isinstance(handler, StreamHandler):
- 但我真的很想知道为什么你想做这样的事情而不是使用明智的解决方案(即根本没有为您的记录器配置StreamHandler ...)。