簡體   English   中英

無法在運行10.6的Mac上安裝pip

[英]Trouble installing pip on Mac running 10.6

1我使用brew安裝了python。

2 Python get-pip.py結果如下:

Requirement already up-to-date: pip in /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

3當我嘗試使用pip安裝其他東西時,我得到了這個:

pip install nose
-bash: /System/Library/Frameworks/Python.framework/Versions/2.7/bin/pip: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Content: bad interpreter: No such file or directory.

因為您使用的是系統隨附的python(在/System/Library/... ),通常python是/Library/...所以pip命令在錯誤的位置查找python解釋器。

如果您使用的是操作系統隨附的python,則它可能已過時,因此我建議從python.org安裝它,它將安裝到pip期望的位置,因此也可以解決當前的問題。

如果您對已安裝的python版本感到滿意,並且python命令可以正常運行並且pip作為模塊安裝,則可以使用python -m pip運行pip命令。 無需更改!


如果您真的要在非標准安裝中使用pip快捷方式。

(我個人不建議這樣做,因為其他選項更好,但在某些時候可能對某人有用)

您收到的錯誤專門是因為pip文件中的shebang不正確,因此您可以根據需要進行修復。

首先找到pip命令和python命令, which pipwhich python ,python是機器代碼,但是您可以在文本編輯器中讀取pip ,這就是我的樣子:

#!/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python

# -*- coding: utf-8 -*-
import re
import sys

from pip import main

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

第一個喜歡以#!開頭#! 是shebang,它指示可以運行此文件的python可執行文件的路徑( which python的路徑),因此只需將其更改為python可執行文件的路徑並保存,您就可以開始使用了!

簡短建議:使用Pyenv

在Mac上對Python的本機安裝進行了一些調整,並且操作系統的多個組件也使用了它,因此最好不要修補它。

使用Pyenv,您可以設置多個虛擬Python環境,這些環境可以具有特定的Python版本,並可以為特定的文件夾自動啟用。

例如,假設您要為項目使用Python 3.6。 首先,您必須安裝Pyenv及其虛擬環境模塊:

brew install pyenv pyenv-virtualenv pyenv install 3.6.0

然后,您可以基於Python 3.6創建自己的環境: pyenv virtualenv 3.6.0 my-own-py36

完成后,您應該在自己的環境中, pip將適用於該特定版本。

無論如何,也許最舒適的選擇是為特定文件夾自動啟用它。 您可以執行以下操作:轉到項目根目錄並輸入: pyenv local my-own-py36

希望對您有所幫助,如有疑問,可以查看Pyenv文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM