Python 3 official docs陈述关于StreamHandler
的以下内容:
返回
StreamHandler
类的新实例。如果指定了stream,实例将使用它来记录输出;否则,实例将使用它来记录输出。否则,将使用sys.stderr
。
有人可以解释一下这是什么意思吗?
我使用一个StreamHandler
实例,该实例在不指定流的情况下进行了初始化:
class MyLogger():
def __init__(self, level):
self.logger = getLogger('MyLogger')
self.debug = self.logger.debug
self.info = self.logger.info
self.warning = self.logger.warning
self.error = self.logger.error
self.critical = self.logger.critical
streamHandler = StreamHandler()
streamHandler.setLevel(level)
self.logger.addHandler(streamHandler)
self.logger.setLevel(level)
myLogger = MyLogger(DEBUG)
...
myLogger.debug('message')
但是所有内容都会打印到控制台上(即sys.stdout
)。
那么sys.stderr
到底涉及多少?
谢谢!