jupyter-console输入任意内容均触发未命名异常求助
Jupyter Console 输入任意内容触发未处理异常的排查方案
问题根源
报错栈的核心触发点在jupyter_core/utils/__init__.py的run_sync函数中,断言inspect.iscoroutinefunction(coro)失败——也就是说iopub_channel.msg_ready并非预期的协程函数,导致同步调用异步逻辑时触发断言错误。这几乎都是依赖包版本与Python 3.11不兼容导致的。
解决步骤
- 升级核心依赖包:Python 3.11对异步API做了调整,旧版本的Jupyter组件未适配。执行以下命令升级:
pip install --upgrade jupyter-console jupyter_core ipykernel - 修复prompt_toolkit兼容性:报错涉及Windows下的输入处理模块,升级prompt_toolkit到适配版本:
pip install --upgrade prompt_toolkit - 排查虚拟环境冲突:如果使用虚拟环境,确保激活目标环境后再执行升级,避免全局包与虚拟环境包版本冲突;必要时创建全新虚拟环境重新安装Jupyter组件。
验证
升级完成后重启CMD,运行jupyter-console并输入简单命令(如print("test")),确认异常是否消失。
内容的提问来源于stack exchange,提问作者shintuku
相关产品推荐
相关产品推荐

