1. 程式人生 > >Python python2和python3的安裝及切換使用

Python python2和python3的安裝及切換使用

簡介

python官方目前維護了兩個主要的python版本,2.x和3.x版本(2.7和3.4)。兩個版本中函式的使用、包的匯入、甚至一些基本底層的方法都有很大的不同,據官方說python 3在各個方面都有了很大的改進和提高。但是蛋疼的是你更新版本不向下相容,而且python 2還那麼多使用者使用,只能老版本也保留著了,這也就是為什麼要維護兩個版本。(對於這兩個版本網上的討論很多,還有人問學python 2還是python 3,建議都學一下吧,畢竟是同一個語言,相似度還是很大的,學兩個也沒什麼壓力,而且都能用的到。至於到底是python 2最終被淘汰還是python 3毀滅了python,who cares。好好學習才是王道!!!)

所以python 3不是向下相容的,也就是python 2的程式不能直接在python 3的環境下執行,必須經過一些必要的修改來適應python 3的語法。為了簡化這個轉換過程,Python 3自帶了一個叫做2to3的實用指令碼(Utility Script),這個指令碼會將你的Python 2程式原始檔作為輸入,然後自動將其轉換到Python 3的形式。當然這個轉換不是絕對的,它也有一些不能處理的情況,這裡就不討論了。有想了解的小夥伴可以參考這篇文章:http://blog.csdn.net/samxx8/article/details/21535901

python 2和python 3也因為不相容的原因,所以在各個作業系統中都是可以並存的,不會因為安裝了一個把另一個給覆蓋掉,可以就當這是兩個不同的軟體。

Ubuntu

因為ubuntu系統底層使用了很多python 2的庫,所以預設安裝python 2,一般不可解除安裝。所以想使用python 3的話,還需要單獨安裝。
執行下面命令安裝python 3

sudo apt-get install python3

這樣就安裝好了,一般安裝在/usr/share/python3資料夾下,同時也可以看到對應的python 2的安裝目錄/usr/share/python2(可以用dpkg -L python命令檢視安裝情況),在/usr/bin下面還能找到對應的pythonpython3軟連結指向該目錄下相應的可執行程式。
執行下面命令可以檢視版本

python -V   #檢視python 2的版本號
python3 -V #檢視python 3的版本號

執行下面命令進入console介面

python   #進入python 2的console
python3   #進入python 3的console

執行下面命令執行.py檔案

python *.py   #使用python 2執行檔案
python3 *.py   #使用python 3執行檔案

從上面可以看出來在ubuntu的系統環境下,可以完全把python 2和python 3當做兩個命令使用。

Windows

windows上預設是沒有安裝python的,安裝的話去 https://www.python.org/downloads/ 下載相應的python 2和python 3的msi安裝包,預設安裝即可,一般預設是分別安裝到C:\Python27C:\Python34資料夾下,當然也可以安裝到其他目錄下,後面的操作都是安裝預設安裝來處理。

對windows系統來說只有python命令,沒有像ubuntu的以python3開頭的命令。因為在兩個安裝目錄下都是python.exe執行檔案,所以對python 2和python 3來說命令都是python命令,只不過是路徑的不同。

執行下面命令可以檢視版本

python -V   

但是報錯了

'python' is not recognized as an internal or external command,
operable program or batch file.

這種情況就是在系統目錄下找不到python命令(一般來說需要設定環境變數),不設定的話那麼怎麼使用了,用絕對路徑來呼叫命令

C:\Python27\python -V   #檢視python 2的版本號
C:\Python34\python -V   #檢視python 3的版本號
C:\Python27\python   #進入python 2的console
C:\Python34\python   #進入python 3的console
C:\Python27\python *.py   #使用python 2執行檔案
C:\Python34\python *.py   #使用python 3執行檔案

如果不想輸入路徑,想在命令列直接使用,就要設定環境變數,在Path中加入C:\Python27或者C:\Python34,那麼使用時就會使呼叫相應的python命令,當然這兩條也可以同時加入Path中,一般來說是前面的起作用(主要是在前面的路徑在找到該命令就不會往後掃描了)。但是切換python 2和python 3的使用還需要再去更改環境變數,太麻煩,還不如直接使用絕對路徑(當然如果大部分情況下只使用其中的一個版本設定環境變數還是很方便的,另一個不常用版本可以用絕對路徑)。