Python 如何登录Jupyter笔记本';版本4.1.1之后的用户控制台而不是网页

Python 如何登录Jupyter笔记本';版本4.1.1之后的用户控制台而不是网页,python,logging,jupyter,jupyter-notebook,Python,Logging,Jupyter,Jupyter Notebook,在版本4.1.0中: import logging r = logging.getLogger() r.setLevel(logging.DEBUG) logging.debug("debug") 将登录到控制台/终端。 我们可以通过以下方式获得默认的StreamHandler: stream\u handler=root.handlers[0] 但在4.1.1中,处理程序丢失,上面的代码将登录到该网页 我找不到4.1.1的发行说明或变更日志 如何在最新版本的jupyter笔记本中登录控制台?

在版本4.1.0中:

import logging
r = logging.getLogger()
r.setLevel(logging.DEBUG)
logging.debug("debug")
将登录到控制台/终端。
我们可以通过以下方式获得默认的
StreamHandler
stream\u handler=root.handlers[0]

但在4.1.1中,处理程序丢失,上面的代码将登录到该网页

我找不到4.1.1的发行说明或变更日志


如何在最新版本的jupyter笔记本中登录控制台?

解决方案是自己添加标准输出单元

root = logging.getLogger()
root.addHandler(logging.StreamHandler(os.fdopen(1, "w")))

现在,
logging.debug
登录到控制台

请注意,这对unicode错误消息不起作用。例如:类似这样的
logging.error(“(ヒラギノ明朝 ProN.ttc)
将引发一个错误
UnicodeEncodeError:“ascii”编解码器无法对位置1-6中的字符进行编码:序号不在范围内(128)
。解决方案可能是指定编码
root.addHandler(logging.StreamHandler(open(1,“w”,encoding=“utf-8”)