在IPython Notebook中使用Python 2.x和Python 3.x

我使用IPython笔记本,并希望能够select在IPython中创build2.x或3.x python笔记本。

我最初有Anaconda。 随着Anaconda一个全局环境variables不得不改变,select你想要的Python版本,然后IPython可以启动。 这不是我正在寻找的,所以我卸载了Anaconda,现在已经使用MacPorts和PiP设置了我自己的安装。 看来我还是要用

port select --set python <python version> 

在Python 2.x和3.x之间切换。 这并不比python解决scheme好。

有没有办法select你想在启动IPython笔记本后使用什么版本的Python,最好用我目前的MacPorts版本?

这里的想法是安装多个ipython内核。 这里是anaconda的说明。 如果你不使用anaconda,我最近添加了使用纯virtualenvs的说明。

python4.1.0

从版本4.1.0开始,anaconda包含一个特殊的软件包nb_conda_kernels ,用于检测笔记本内核的nb_conda_kernels环境并自动注册它们。 这使得使用新的python版本像创build新的conda环境一样简单:

 conda create -n py27 python=2.7 ipykernel conda create -n py36 python=3.6 ipykernel 

jupyter笔记本重新启动后,新的内核可通过graphics界面进行访问。 请注意,新软件包必须明确安装到新的环境中。 conda文档中的Managing environments部分提供了更多信息。

手动注册内核

不想使用nb_conda_kernels或仍旧使用旧版anaconda的用户可以使用以下步骤手动注册ipython内核。

configurationpython2.7环境:

 conda create -n py27 python=2.7 source activate py27 conda install notebook ipykernel ipython kernel install --user 

configurationpython3.6环境:

 conda create -n py36 python=3.6 source activate py36 conda install notebook ipykernel ipython kernel install --user 

之后,你应该可以selectpython2
python3在界面中创build一个新的笔记本。

此外,如果要更改内核的名称,则可以将--name--display-name选项传递给ipython kernel install 。 有关更多信息,请参阅ipython kernel install --help

如果您在Python 3上运行Jupyter ,则可以像这样设置Python 2内核:

 python2 -m pip install ipykernel python2 -m ipykernel install --user 

http://ipython.readthedocs.io/en/stable/install/kernel_install.html

使用当前版本的Notebook / Jupyter,您可以创build一个Python3内核 。 在使用Python 2从命令行启动新的笔记本应用程序后,您应该在下拉菜单“新build”中看到一个条目“Python 3”。 这给你一个使用Python 3的笔记本。所以你可以有两个不同的Python版本的并行笔记本。

细节

  1. 创build这个目录: mkdir -p ~/.ipython/kernels/python3
  2. 使用以下内容创build此文件~/.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" } } 
  3. 重新启动笔记本服务器。

  4. 从下拉菜单“新build”中select“Python 3”
  5. 使用Python 3笔记本
  6. 从下拉菜单“新build”中select“Python 2”
  7. 使用Python 2笔记本电脑

这些说明解释了如何在非anaconda用户的单独虚拟环境中安装python2和python3内核。 如果您正在使用anaconda,请find我的其他答案 ,直接为anaconda量身定制解决scheme。

我假设你已经安装了jupyter notebook


首先确保你有一个python2和一个python3解释器可用。

在Ubuntu上,你可以通过以下方式来安装:

 sudo apt-get install python-dev python3-dev python-pip python3-pip 

接下来准备并注册内核环境

 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 

为了方便起见,您可能需要将激活命令的shell别名添加到shellconfiguration文件中。 根据您使用的系统和shell,这可以是~/.bashrc~/.bash_profile~/.zshrc

 alias kernel2='source ~/py2_kernel/bin/activate' alias kernel3='source ~/py3_kernel/bin/activate' 

重新启动shell后,现在可以在激活要使用的环境后安装新的软件包。

 kernel2 python -m pip install <pkg-name> deactivate 

要么

 kernel3 python -m pip install <pkg-name> deactivate 

有一个解决scheme可以让我通过configurationIpython kernelspec来保留我的MacPorts安装。

要求:

  • MacPorts安装在通常的/ opt目录中
  • python 2.7是通过macports安装的
  • python 3.4通过macports安装
  • Ipython为Python 2.7安装
  • Ipython是为python 3.4安装的

对于Python 2.x:

 $ cd /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin $ sudo ./ipython kernelspec install-self 

对于python 3.x:

 $ cd /opt/local/Library/Frameworks/Python.framework/Versions/3.4/bin $ sudo ./ipython kernelspec install-self 

现在你可以打开一个Ipython笔记本,然后select一个Python 2.x或者一个Python 3.x笔记本。

选择你的蟒蛇!

从我的Linux安装,我做到了:

sudo ipython2 kernelspec install-self

现在我的Python 2重新回到了榜单上。

参考:

http://ipython.readthedocs.org/en/latest/install/kernel_install.html


更新:

上面的方法现在已被弃用,将来会被丢弃。 新方法应该是:

sudo ipython2 kernel install

从那以后,我看着这个优秀的信息,然后想知道

  1. 我已经安装了python2,python3和IPython,
  2. 我已经安装了PyCharm,
  3. PyCharm使用IPython作为其Python控制台,

如果 PyCharm会使用

  1. IPython-py2当菜单>文件>设置>项目>项目解释器== py2 AND
  2. IPython-py3,当菜单>文件>设置>项目>项目解释器== py3

答:是的!

PS我也有安装Windows的Python启动器。

使用sudo pip3 install jupyter为python3安装jupyter, sudo pip install jupyter为python2安装jupyter笔记本。 然后,你可以调用ipython kernel install命令来启用这两种types的笔记本在jupyter笔记本中进行select。

在Windows 7下,我安装了anaconda和anaconda3。 我进入\Users\me\anaconda\Scripts并执行

 sudo .\ipython kernelspec install-self 

然后我进入\Users\me\anaconda3\Scripts并执行

 sudo .\ipython kernel install 

(我得到了jupyter kernelspec install-self is DEPRECATED as of 4.0. You probably want 'ipython kernel install' to install the IPython kernelspec.

启动jupyter notebook (anaconda3)后,我在“New”下右上angular的下拉菜单中让我selectPython 2 odr Python 3内核。