系統中同時有 python2和 python3,怎麼讓 ipython 選擇不同的版本啟動?

系統:OSX
使用的是 Ipython2.2.0,默認使用 python3,但是我有時候還用到 python2,請問如何切換呢?


裝一個 Python 2 版本的,一個 Python 3 版本的。記得裝好一個之後把那個可執行文件改名(比如 2 版本的叫 ipython2,3 版本的就叫 ipython3)。用的時候寫帶版本號的名字就可以了。


pip install ipython 安裝python2的
pip3 install ipython 安裝python3的

之後shell中執行ipython或ipython3會進入不同的


&> which ipython
/usr/local/bin/ipython
&> cat /usr/local/bin/ipython
#!/usr/local/opt/python/bin/python2.7
# -*- coding: utf-8 -*-
import re
import sys
from IPython import start_ipython
if __name__ == "__main__":
sys.argv[0] = re.sub(r"(-script.pyw?|.exe)?$", "", sys.argv[0])
sys.exit(start_ipython())

這是我的 ipython 可執行文件,ipython2 和這個一樣,ipython 版本 5.1.0

你把這個可執行文件的頭行修改為相應的 Python 解釋器即可。

#!/usr/bin/env python2

#!/usr/bin/env python3


我使用Anaconda的辦法:

conda create -n python2 python=2.7 anaconda
conda create -n python3 python=3.5 anaconda

然後用

source activate python2
source activate python3


沒用過 iPython,不過可以試下 virtualenv 對你有沒有幫助


$ conda search ipython | grep 2.3.1
2.3.1 py34_0 defaults
2.3.1 py33_0 defaults
2.3.1 py27_0 defaults
2.3.1 py34_0 defaults
2.3.1 py33_0 defaults
2.3.1 py27_0 defaults
2.3.1 py34_0 defaults
2.3.1 py33_0 defaults
2.3.1 py27_0 defaults

Anaconda 大法好。
Anaconda Scientific Python Distribution


一、同時安裝python2.7與python3.6

安裝了python2.7與python3.6之後:

在windows shell 中輸入py進入python3.6,

輸入python進入python2.7

安裝對應版本的第三方庫時:

python2.7版本用:python -m pip install

python3.6版本用:py -m pip install

二、同時為python2.7與python3.6安裝ipython

根據一中的方法ipython:

python2.7: python -m pip install ipython

python3.6:py -m pip install ipython

在windows shell 中分別輸入:

ipython 啟動python2.7對應版本

ipython3 啟動python3.6對應版本


使用virtualenv,具體自行搜索


使用pyenv,為不同的工作目錄設定不同的python版本;
使用virtualenv,為同一python版本下的不同工程建立隔離的庫環境。


我的ubuntu自帶python2.7和python3.5,命令行輸入python啟動python2.7輸入python3啟動python3.5.


拋棄系統的Python,使用yyuu/pyenv。


推薦閱讀:

想用Python做一款處理上市公司財務數據的軟體,應該學習哪幾個部分?
不懂編程,如何才能學好python呢?
大家都是怎麼部署python網站的?
python中如何使用requests模塊下載文件並獲取進度提示?
最近在學習Python爬蟲,求大神給點乾貨?

TAG:Python | Python3x | IPython |