如何启动使用Python 3内核的Sage Jupyter Notebook?
解决方案
- 优先升级Sage到9.0及以上稳定版本
8.x及更早的Sage版本默认绑定Python2运行内核,9.0之后的官方稳定版已全面默认使用Python3。升级完成后照常执行sage -n jupyter启动的Jupyter Notebook自带Sage内核即为Python3版本,无需额外配置。 - 环境受限无法升级时,手动编译Sage绑定Python3
- 终端执行
which python3获取本地Python3可执行文件的绝对路径 - 进入Sage源码根目录,执行配置命令:
./configure --with-python=替换为上一步查询到的Python3路径 - 执行
make完成编译,编译完成后的Sage运行内核将切换为指定的Python3版本
- 终端执行
- 验证配置生效
终端执行sage进入Sage交互环境,运行import sys; print(sys.version),确认输出为Python3版本信息后,再启动Jupyter即可。
报错原因说明
Python2与Python3的urllib模块结构不兼容:Python2标准库中不存在
urllib.request子模块,对应功能需要通过urllib2等独立模块实现,因此在Python2内核的Sage环境中执行import urllib.request会触发ImportError,切换为Python3内核即可解决该问题。
内容的提问来源于stack exchange,提问作者zaakm
相关产品推荐
相关产品推荐

