如何给 jupyter 增加新的 python 内核
在我们已经安装了 Anaconda 和 python3 后,以添加 python2.7 为例,展示如何给 jupyter 添加新内核。
步骤:
step1:创建 python2.7版本虚拟环境
打开 Anaconda Prompt 输入以下指令
conda create -n env_name python=2.7
#注意 env_name 改自己环境的名字,如Py27
出现[y/n],输入y,等待完成即可。
若出现某些没有完成100%,失败了,就继续上面的步骤,直到都完成100%。
step1完成图step2:进入环境
# windows user:
activate env_name
#Mac user:
source activate env_name
#注意 env_name 改自己环境的名字,如Py27
step3:安装 ipykernel
安装ipykernel图pip install ipykernel
step4:通过 ipykernel为 jupyter添加 python2.7环境
成功安装 ipykernel 后,输入以下指令。
python -m ipykernel install --name env_name
#注意 env_name 为之前激活的环境名字,如 Py27
step5:重新打开 jupyter notebook 或者刷新 jupyter notebook 页面就可以看到 python2.7版本的 Py27已经添加到 kernel里了。
添加好了新核关闭退出 python27环境
# windows user:
deactivate
#Mac user:
source deactivate
查看已有 kernel
在退出 Py27环境后,可以输入以下指令查看 jupyter 中已经存在的 kernel 。
jupyter kernelspec list
过程中可能出现的问题
小编在step3:安装 ipykernel 输入 pip install ipykernel 时,出现了下面的错误:
UnicodeDecodeError: ‘ascii’ code can’t decode byte 0xef in position 7: ordinal not in range(128)
原因是 pip 安装 python 包会加载当前用户的用户目录,而小编的用户目录恰好是含有中文的,ascii 不能进行编码。
小编通过以下方法解决了这个问题:
修改 python 安装目录 Py27\Lib\目录下的 mimetypes.py 文件。
找到mimetypes.py文件双击 mimetypes.py 文件若出现闪退,则打开 python2.7 的 IDLE。
首先找到 python 安装位置,进入安装目录之后,点击Lib文件夹,然后点击 idlelib 文件夹,在此文件夹找到 idle.bat 文件,双击 idle.bat 文件,就打开了 IDLE。
找到idle.bat 打开idle点击File-->Open,找到 mimetypes.py 打开即可。
在import下添加如下几行:
添加代码if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
添加完成并保存,进入 Anaconda Prompt 窗口执行 pip install ipykernel 命令就可以了。
自此,通过上面5个步骤就完成了给 jupyter 添加一个新的 python2 内核。