del*_*tap 244 python ipython python-2.7 python-3.x ipython-notebook
我使用IPython笔记本,并希望能够选择在IPython中创建2.x或3.x python笔记本.
我最初有Anaconda.使用Anaconda时,必须更改全局环境变量以选择所需的python版本,然后才能启动IPython.这不是我想要的,所以我卸载了Anaconda,现在已经使用MacPorts和PiP设置了我自己的安装.看来我还是要用
port select --set python <python version>
Run Code Online (Sandbox Code Playgroud)
在python 2.x和3.x之间切换.这并不比蟒蛇解决方案好.
有没有办法在启动IPython笔记本后选择要使用的python版本,最好是使用我当前的MacPorts构建?
cel*_*cel 325
这里的想法是安装多个ipython内核.以下是anaconda的说明.如果你不使用蟒蛇,我最近添加的说明采用纯virtualenvs.
从版本4.1.0开始,anaconda包含一个特殊的软件包nb_conda_kernels,可以检测具有笔记本内核的conda环境并自动注册它们.这使得使用新的python版本就像创建新的conda环境一样简单:
conda create -n py27 python=2.7 ipykernel
conda create -n py36 python=3.6 ipykernel
Run Code Online (Sandbox Code Playgroud)
重启jupyter笔记本后,新内核可通过图形界面获得.请注意,必须在新环境中明确安装新软件包.conda文档中的管理环境部分提供了更多信息.
不想使用nb_conda_kernels或仍使用旧版anaconda的用户可以使用以下步骤手动注册ipython内核.
配置python2.7环境:
conda create -n py27 python=2.7
conda activate py27
conda install notebook ipykernel
ipython kernel install --user
Run Code Online (Sandbox Code Playgroud)
配置python3.6环境:
conda create -n py36 python=3.6
conda activate py36
conda install notebook ipykernel
ipython kernel install --user
Run Code Online (Sandbox Code Playgroud)
之后,你应该能够选择之间python2
,并python3创造了该接口一个新的笔记本时.
此外,如果要更改内核的名称,可以传递--name和--display-name选项ipython kernel install.有关ipython kernel install --help更多信息,请参阅.
小智 264
如果您在Python 3上运行Jupyter,您可以设置如下的Python 2内核:
python2 -m pip install ipykernel
python2 -m ipykernel install --user
Run Code Online (Sandbox Code Playgroud)
http://ipython.readthedocs.io/en/stable/install/kernel_install.html
Mik*_*ler 37
使用当前版本的Notebook/Jupyter,您可以创建Python3内核.在使用Python 2从命令行启动新的笔记本应用程序后,您应该在下拉菜单"新建"中看到一个条目"Python 3".这给你一个使用Python 3的笔记本.所以你可以有两个笔记本并排使用不同的Python版本.
mkdir -p ~/.ipython/kernels/python3~/.ipython/kernels/python3/kernel.json使用此内容创建此文件:
{
"display_name": "IPython (Python 3)",
"language": "python",
"argv": [
"python3",
"-c", "from IPython.kernel.zmq.kernelapp import main; main()",
"-f", "{connection_file}"
],
"codemirror_mode": {
"version": 2,
"name": "ipython"
}
}
Run Code Online (Sandbox Code Playgroud)重启笔记本服务器.
cel*_*cel 37
这些说明解释了如何在非anaconda用户的不同虚拟环境中安装python2和python3内核.如果您使用的是anaconda,请找到我的另一个答案,找到直接针对anaconda量身定制的解决方案.
我假设你已经jupyter notebook安装好了.
首先要确保你有一个python2和一个可用的python3口译员pip.
在ubuntu上你会安装这些:
sudo apt-get install python-dev python3-dev python-pip python3-pip
Run Code Online (Sandbox Code Playgroud)
接下来准备并注册内核环境
python -m pip install virtualenv --user
# configure python2 kernel
python -m virtualenv -p python2 ~/py2_kernel
source ~/py2_kernel/bin/activate
python -m pip install ipykernel
ipython kernel install --name py2 --user
deactivate
# configure python3 kernel
python -m virtualenv -p python3 ~/py3_kernel
source ~/py3_kernel/bin/activate
python -m pip install ipykernel
ipython kernel install --name py3 --user
deactivate
Run Code Online (Sandbox Code Playgroud)
为了简化操作,您可能希望将激活命令的shell别名添加到shell配置文件中.根据您使用的系统和外壳,可以是例如~/.bashrc,~/.bash_profile或~/.zshrc
alias kernel2='source ~/py2_kernel/bin/activate'
alias kernel3='source ~/py3_kernel/bin/activate'
Run Code Online (Sandbox Code Playgroud)
重新启动shell后,您现在可以在激活要使用的环境后安装新软件包.
kernel2
python -m pip install <pkg-name>
deactivate
Run Code Online (Sandbox Code Playgroud)
要么
kernel3
python -m pip install <pkg-name>
deactivate
Run Code Online (Sandbox Code Playgroud)
del*_*tap 22
有一个解决方案可以让我通过配置Ipython kernelspec来保持我的MacPorts安装.
要求:
对于python 2.x:
$ cd /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin
$ sudo ./ipython kernelspec install-self
Run Code Online (Sandbox Code Playgroud)
对于python 3.x:
$ cd /opt/local/Library/Frameworks/Python.framework/Versions/3.4/bin
$ sudo ./ipython kernelspec install-self
Run Code Online (Sandbox Code Playgroud)
现在你可以打开一个Ipython笔记本,然后选择一个python 2.x或一个python 3.x笔记本.
mim*_*lea 17
从我的Linux安装我做到了:
sudo ipython2 kernelspec install-self
现在我的python 2又回到了列表中.
参考:
http://ipython.readthedocs.org/en/latest/install/kernel_install.html
更新:
上面的方法现已弃用,将来会被删除.新方法应该是:
sudo ipython2 kernel install
以下是将python2内核添加到jupyter notebook的步骤::
打开终端并创建一个新的python 2环境: conda create -n py27 python=2.7
激活环境:Linux source activate py27或Windowsactivate py27
在env中安装内核: conda install notebook ipykernel
在env之外安装内核: ipython kernel install --user
关闭环境: source deactivate
虽然迟到的答案希望有人发现它有用:p
| 归档时间: |
|
| 查看次数: |
275184 次 |
| 最近记录: |