多個版本的python共存時使用pip的正確做法

2022-09-28 21:57:19 字數 1333 閱讀 4781

想學習python3,但是暫時又離不開python2。在windows上如何讓它們共存呢?

目前國內**經常會讓大家把其中乙個python.exe改個名字(嗯,我也這樣講過,在此糾正一下)www.cppcns.com,這樣區分開兩個可執行檔案的名字,但是這樣做有乙個重大的隱患,就是修改了名字的那個python對應的pip將無法使用。

官方的解法是什麼?

事實上這個問題幾年以前python社群就給出了官方解決方案,只不過國內一直沒有注意到罷了。

我們在安裝python3(>=3.3)時,python的安裝包實際上在系統中安裝了乙個啟動器py.exe,預設放置在資料夾c:\windows\下面。這個啟動器允許我們指定使用python2還是python3來執行**(當然前提是你已經成功安裝了python2和python3)。

如果你有乙個python檔案叫 hello.py,那麼你可以這樣用python2執行它

py -2 hello.py

類似的,如果你想用python3執行它,就這樣

py -3 hello.py

每次執行都要加入引數-2/-3還是比較麻煩,所以py.exe這個啟動器允許你在**中加入說明,表明這個檔案應該是由python2解釋執行,還是由python3解釋執行。說明的方法是在**檔案的最開始加入一行

#! p程式設計客棧ython2

或者#! python3

分別表示該**檔案使用python2或者python3解釋執行。www.cppcns.com這樣,執行的時候你的命令就可以簡化為

py hello.py

使用pip

當python2和python3同時存在於windows上時,它們對應的pip都叫pip.exe,所以不能夠直接使用 pip install 命令來安裝軟體包。而是要使用啟動器py.exe來指定pip的版本。命令如下:

py -2 程式設計客棧-m pip install ***x

-2 還是表示使用 python2,-m pip 表示執行 pip 模組,也就是執行pip命令了。如果是為python3安裝軟體,那麼命令類似的變成

py -3 -m pip install ***x

#! python2 和 # coding: utf-8 哪個寫在前面?

對於python2使用者還有另外乙個困惑,python2要在**檔案頂部增加一行說明,才能夠在**中使用中文。如果指明使用的python版本也需要在檔案頂部增加一行,那哪一行應該放在第一行呢?

#! python2 需要放在第一行,編碼說明可以放在第二行。所以檔案開頭應該類似於:

#! python2

# coding: utf-8

有了這些技巧,python2和python3就可以愉快地在一起玩耍了~

python共存 多版本Python共存的配置方法

同一臺pc中,如果同時安裝python2和python3環境,會在執行python命令時出現錯誤,作業系統會找到預設的配置進行執行。怎麼樣才能讓python2和python3一起工作又互相不影響呢。但是由於工作需要,我們的個人pc上可能需要多個python版本共存,應該進行什麼樣的設定呢,本章內容就...

Linux下多個node版本共存

解壓 重新命名node v10.19.0 linux x64 bin node node10 node v10.19.0 linux x64 bin npm npm10 node v10.19.0 linux x64 bin npx npx10 修改node v10.19.0 linux x64 l...

多版本python共存

當不同版本python之間相互不能相容時,可以使用virtualenv建立不同版本python的虛擬環境 當沒有指定python直譯器時 如下 p 即為指定的python版本 將使用預設的全域性python直譯器建立虛擬環境 windows virtualenv p c python27 pytho...