在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版本的并行笔记本。
细节
- 创build这个目录:
mkdir -p ~/.ipython/kernels/python3
-
使用以下内容创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" } }
-
重新启动笔记本服务器。
- 从下拉菜单“新build”中select“Python 3”
- 使用Python 3笔记本
- 从下拉菜单“新build”中select“Python 2”
- 使用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
从那以后,我看着这个优秀的信息,然后想知道
- 我已经安装了python2,python3和IPython,
- 我已经安装了PyCharm,
- PyCharm使用IPython作为其Python控制台,
如果 PyCharm会使用
- IPython-py2当菜单>文件>设置>项目>项目解释器== py2 AND
- 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内核。