2017-03-26 40 views
2

我試圖用PIP爲Python 3.安裝多包運行「PIP安裝多」之後,我得到以下錯誤:安裝與PIP多處理拋出的Python版本錯誤,但setup.py不可達

 File "C:\Users\User\AppData\Local\Temp\pip-build-ixm1pfqb\multiprocessing\setup.py", line 94 
    print 'Macros:' 
       ^
SyntaxError: Missing parentheses in call to 'print' 

我注意到這是由於在這個版本的python中,print命令必須有括號。但是,如果我嘗試打開上面的setup.py文件,則無法打開它,如果打開\ Temp文件夾,則沒有「pip-build-ixm1pfqb」。有人知道這是怎麼回事,我該如何解決這個問題? 註釋:這不是關於「多處理」包的具體問題,因爲該包確實是Python 3.5安裝的一部分。問題是關於「setup.py」的位置。根據我自己的經驗,我知道如果有更多的特殊軟件包未包含在Python的基本安裝中,並且存在這樣的錯誤(畢竟,區分Python版本的簡單標誌將足以避免此問題)需要訪問「setup.py」文件。所以我試着重新說明這個問題: 上面的mentiioned文件會發生什麼情況,因爲系統甚至指出導致錯誤的文件的確切位置,但是文件不可定位?順便說一句,我在Windows 10機器上。

+0

的'multiprocessing'模塊是自帶的每一個Python安裝的標準庫的一部分。 –

+0

我後來也意識到了這一點。因此,問題不在於多處理程序包本身,而在於我得知有些文件中的錯誤是我無法得知的。根據經驗,我知道如果有更多的外來軟件包,人們已經提出了這樣的錯誤(畢竟在這個例子中,Python版本的簡單標誌已經足夠了),必須能夠訪問「setup.py」 。所以我的問題可能會被重新表述:提到的「setup.py」文件會發生錯誤,然後無法定位?系統是否立即刪除它? –

回答

0

當您嘗試使用pip進行安裝時,它會嘗試從源代碼構建軟件包。要做到這一點,它解壓縮臨時目錄中的代碼並運行setup.py

安裝後(如果構建失敗),臨時目錄被刪除。爲了保持該目錄瀏覽,請使用--no-clean參數:

pip install --no-clean <foo> 
0

創建python3的虛擬環境

virtualenv --python=/usr/bin/python3 myenv 
source py3env/bin/activate 
pip install multiprocessing 

來看,這應該是工作