Mac Air M2上Jupyter %qtconsole弹出窗口无提示符问题求助
QtConsole在Mac M2上无提示符问题的解决方案
问题详情
Mac Air M2设备配置Python后,在Jupyter Notebook中执行%qtconsole魔法命令,Qt窗口能弹出但始终没有可用提示符(如图所示),该功能此前可正常使用,现在无法满足Notebook中探索迭代命令的需求。

环境信息
- Python版本:Python 3.10.6
- Qt相关依赖:
conda list | grep qt pyqt 5.15.7 py310h7aaa74b_3 conda-forge pyqt5-sip 12.11.0 py310h0f1eb42_3 conda-forge qt-main 5.15.6 h96bf0dc_0 conda-forge qtconsole 5.4.3 pypi_0 pypi qtpy 2.3.1 pypi_0 pypi
- Jupyter相关依赖:
conda list | grep jupyter jupyter 1.0.0 pypi_0 pypi jupyter-console 6.6.3 pypi_0 pypi jupyter-contrib-core 0.4.2 pypi_0 pypi jupyter-nbextensions-configurator 0.6.3 pypi_0 pypi jupyter_client 7.3.5 pyhd8ed1ab_0 conda-forge jupyter_contrib_core 0.4.0 pyhd8ed1ab_0 conda-forge jupyter_contrib_nbextensions 0.7.0 pyhd8ed1ab_0 conda-forge jupyter_core 5.3.0 py310hca03da5_0 jupyter_highlight_selected_word 0.2.0 py310hbe9552e_1005 conda-forge jupyter_latex_envs 1.4.6 pyhd8ed1ab_1002 conda-forge jupyter_nbextensions_configurator 0.6.1 pyhd8ed1ab_0 conda-forge jupyter_server 1.19.1 pyhd8ed1ab_0 conda-forge jupyterlab 3.4.7 pyhd8ed1ab_0 conda-forge jupyterlab-widgets 3.0.7 pypi_0 pypi jupyterlab_pygments 0.2.2 pyhd8ed1ab_0 conda-forge jupyterlab_server 2.15.2 pyhd8ed1ab_0 conda-forge
可行解决方法
1. 统一依赖安装源
当前qtconsole和qtpy来自PyPI,其余Qt组件来自conda-forge,跨源安装易引发适配问题。试试全部通过conda-forge重装:
conda remove qtconsole qtpy conda install -c conda-forge qtconsole qtpy
2. 用Rosetta兼容模式启动终端
M2原生ARM架构对部分Qt版本支持存在异常,通过Rosetta模式启动Jupyter:
- 找到终端应用,右键选择「显示简介」
- 勾选「使用Rosetta打开」
- 重启终端,激活conda环境后重新启动Jupyter Notebook,再执行
%qtconsole尝试
3. 降级jupyter-client版本
高版本jupyter-client与qtconsole可能存在兼容性bug,尝试降级到7.0.x版本:
conda install jupyter-client=7.0.6
4. 重置Jupyter配置
配置文件损坏也可能导致该问题,重置配置后重试:
jupyter notebook --generate-config --force
可删除旧配置备份,再重启Jupyter Notebook。
5. 测试独立qtconsole是否正常
直接在终端中输入qtconsole,检查是否能正常显示提示符:
qtconsole
如果独立启动正常,说明问题出在Notebook与qtconsole的连接上,尝试更新ipykernel:
conda install -c conda-forge ipykernel --update-deps
内容的提问来源于stack exchange,提问作者user22062411
相关产品推荐
相关产品推荐

