如何在 Linux 的 Windows 子系統上使用 Windows 和 Linux 的相同 Python

如何在 Linux 的 Windows 子系統上使用 Windows 和 Linux 的相同 Python

我的 Windows 電腦上安裝了 Python 3.6。我安裝了適用於 Linux 的 Windows 子系統 (WSL)。當我輸入pythonUbuntu 終端機時,我被告知我正在使用 Python 2.7(我想它是預先安裝在 Ubuntu 上的)。

如何在 Windows 和 Linux 上使用相同的 Python,以便如果我從其中任何一個使用 pip 安裝新包,我都可以從其中一個訪問它?我希望兩個系統共享相同的Python。

似乎遵循以下原則建立別名可能會起作用,但我很確定該pip命令將保持不變(指 Windows 上的 Python 3.6 和 Linux 上的 Python 2.7),其他功能也可能如此。

答案1

python.exe您可以透過鍵入而不是使用 Windows 中使用的 python 版本python3。不建議這樣做,也沒有真正的理由這樣做,因為您將面臨幾個問題

  • CR/LF 行結尾
  • 以這種方式運行 python 不會保留路徑,因此,假設您test.py在當前的 WSL 資料夾中運行python.exe test.py. Python將在其根目錄啟動,並且將無法定位test.py

Python 的行為是相同的,就像在 etc 的情況下一樣pip freeze,如果你在相同的環境中運行,將會產生相同的輸出virtualenv,因此只使用 ubuntu 版本的 python 就可以正常工作。

從 18.04 開始,WSL ubuntu 預先安裝了 Python 3.6.5,下面可以看到 windows 和 ubuntu python 都在使用

答案2

我按照這些步驟操作。這對我有用。這些步驟在 WSL Ubuntu 上安裝 python3

sudo apt-get install software-properties-common
sudo apt-add-repository universe
sudo apt-get update
sudo apt-get -y install python3-pip 

我從這裡得到了幫助 - [https://askubuntu.com/a/672836/876942]。按照這些步驟安裝 python 2。

相關內容