我剛安裝的Python 3.6和運行終端,試圖import
任何我已經安裝了3.5模塊(RSA,matplotlib,附魔,...)和它返回:如果我安裝了新的Python語言,我應該重新安裝每個模塊嗎?
ModuleNotFoundError: No module named 'module_name'
然而,他們仍然可以工作當我運行Python 3.5。我該怎麼辦?
我剛安裝的Python 3.6和運行終端,試圖import
任何我已經安裝了3.5模塊(RSA,matplotlib,附魔,...)和它返回:如果我安裝了新的Python語言,我應該重新安裝每個模塊嗎?
ModuleNotFoundError: No module named 'module_name'
然而,他們仍然可以工作當我運行Python 3.5。我該怎麼辦?
pip install module_name
請編輯您的答案,包括一些解釋。僅有代碼的答案對未來SO讀者的教育很少。您的回答是在低質量的審覈隊列中。 – mickmackusa
如果你安裝了,你會不會有你沒有安裝已爲舊版本的模塊不同的Python版本。
您安裝的每個Python版本都有自己的工作目錄,以及它自己的模塊。一般來說,爲特定版本的Python安裝的模塊不能用於其他版本,比較老的或較新的版本。這是因爲Python模塊通常需要預編譯文件和特定於版本的功能才能在特定版本的Python上工作。例如,你不能在Python 3.6上爲Python 2.7使用模塊,因爲很多東西從版本2改爲3.
這意味着你將不得不重新安裝你需要的任何模塊Python版本再次,這很容易做到using PIP運行pythonX.Y
,其中X.Y
是版本號,這樣的:
python2 -m pip install SomePackage # default Python 2
python2.7 -m pip install SomePackage # specifically Python 2.7
python3 -m pip install SomePackage # default Python 3
python3.6 -m pip install SomePackage # specifically Python 3.6
還要注意,複製舊的站點包文件夾不噸他和重裝模塊一樣,不應該這樣做。
點子工作得很好! –
可能是OP有用的解釋「爲什麼」,值得注意的是,雖然有很多的純Python源是正確_will_上兩個版本的工作,也有二進制(C等)包含特定版本的編譯代碼模塊(感覺免費盜取,並編輯它:D) –
@AnthonySottile你是對的,謝謝! –
不,他們不會自動發生,無論是重新安裝或(複製粘貼站點包文件夾) - 別推薦這樣做 – abccd