ImportError: ไม่มีโมดูลชื่อ pip


124

ระบบปฏิบัติการ: Mac OS X 10.7.5 Python Ver: 2.7.5

ฉันได้ติดตั้ง setuptools 1.0 ด้วย ez_setup.py จากhttps://pypi.python.org/pypi/setuptools จากนั้นฉันดาวน์โหลด pip.1.4.1 pkg จากhttps://pypi.python.org/pypi/pip/1.4.1 .

เรียกใช้ (sudo) python setup.py installใน iTerm แสดงให้เห็นว่า

running install
running bdist_egg running egg_info writing requirements to
pip.egg-info/requires.txt writing pip.egg-info/PKG-INFO writing
top-level names to pip.egg-info/top_level.txt writing dependency_links
to pip.egg-info/dependency_links.txt writing entry points to
pip.egg-info/entry_points.txt warning: manifest_maker: standard file
'setup.py' not found

reading manifest file 'pip.egg-info/SOURCES.txt' writing manifest file
'pip.egg-info/SOURCES.txt' installing library code to
build/bdist.macosx-10.6-intel/egg running install_lib warning:
install_lib: 'build/lib' does not exist -- no Python modules to
install

creating build/bdist.macosx-10.6-intel/egg creating
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/PKG-INFO -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying pip.egg-info/SOURCES.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/dependency_links.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/entry_points.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/not-zip-safe ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/requires.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/top_level.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO creating
'dist/pip-1.4.1-py2.7.egg' and adding
'build/bdist.macosx-10.6-intel/egg' to it removing
'build/bdist.macosx-10.6-intel/egg' (and everything under it)
Processing pip-1.4.1-py2.7.egg removing
'/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg'
(and everything under it) creating
/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg
Extracting pip-1.4.1-py2.7.egg to
/Users/dl/Library/Python/2.7/lib/python/site-packages pip 1.4.1 is
already the active version in easy-install.pth Installing pip script
to /Users/dl/Library/Python/2.7/bin Installing pip-2.7 script to
/Users/dl/Library/Python/2.7/bin

Installed
/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg
Processing dependencies for pip==1.4.1 Finished processing
dependencies for pip==1.4.1

จากนั้นฉันก็ป้อนpip installข้อความแสดงข้อผิดพลาดดังกล่าว

Traceback (most recent call last):   File
"/Library/Frameworks/Python.framework/Versions/2.7/bin/pip", line 9,
in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()   File "build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 357, in
load_entry_point   File
"build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 2394, in
load_entry_point   File
"build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 2108, in
load ImportError: No module named pip

ใครที่เคยเจอปัญหาเดียวกันมาก่อนและสามารถให้คำแนะนำในการแก้ไขได้หรือไม่?


จะเกิดอะไรขึ้นเมื่อคุณเรียกใช้การติดตั้ง pip จากเทอร์มินัล (ไม่ใช่ตัวแปล python)
TheoretiCAL

เทอร์มินัลแสดงข้อผิดพลาดเช่น "Import Error: No module named pip"
David Lu

ฉันตอบโต้คำถามเดียวกันนี้หลังจากอัปเดต MacOSX ในที่สุดฉันก็พบว่าฉันตั้งค่า pip ล้มเหลว ติดตั้ง pip ใหม่แล้วแก้ไข
BollMose

คุณสามารถดูstackoverflow.com/questions/10061039/…
Jichao

ดูเหมือนว่าจะไม่ใช่วิธีแก้ปัญหาสำหรับคุณ แต่ฉันมักจะลองคำสั่งนี้เมื่อฉันมีปัญหากับ pippython -m pip install <package>
MartinP

คำตอบ:


176

ผมมีปัญหาเหมือนกัน. วิธีแก้ปัญหาของฉัน:

สำหรับ Python 3

sudo apt-get install python3-pip

สำหรับ Python 2

sudo apt-get install python-pip

61
คำถามเกี่ยวกับการติดตั้งบน Mac
Corey Goldberg

2
บน Arch ฉันต้องติดตั้ง python2-pip, python-pip ชี้ไปที่ python3
Florian Brinker

1
OMG ขอบคุณ! ฉันมีกล่องพเนจรที่หมุนด้วย python 3 และรู้สึกสงสัยว่าทำไมคำสั่ง pip ถึงไม่ทำงานเมื่อฉันติดตั้ง pip ผ่าน 'sudo apt-get install python-pip' การเปลี่ยนแปลงเวอร์ชันเหล่านี้ (เช่น php กับ homebrew) ทำให้ฉันบ้าในบางครั้ง ...
Ryan Coolwebs

100

บน Mac ใช้ชงเป็นตัวเลือกที่ดีเป็นapt-getจะไม่สามารถใช้ได้ คำสั่ง:

ในกรณีที่คุณติดตั้งทั้ง python2 & python3 บนเครื่อง

python2.7 -m ensurepip --default-pip

ก็ควรแก้ปัญหา

หากคุณขาด pip จาก python 3 แทนpython2.7ให้เปลี่ยนpython3เป็นคำสั่งด้านบน


1
ในที่สุดก็เป็นทางออกที่ใช้ได้! ขอบคุณ! ฉันต้องการ python3 บน Mac (Mac OS X 10.13.4) หลังจากติดตั้งหลามกับเบียร์ pipหาไม่พบผลใน pip ไม่พบ ทำตามแนวทางของคุณ (python3 -m ... ) brew install pythonpython3 -m pip install redis
Raipe

1
ฉันมี python2 และ 3 ในเครื่องเดียวกัน แต่ตอนนี้ฉันต้องการใช้ Python3 ดังนั้นฉันต้องแก้ไขความคิดเห็นด้านบนเป็นsudo python3 -m pip install matplotlib(ฉันต้องทำสิ่งนี้ผ่าน sudo มิฉะนั้นการอนุญาตบางโฟลเดอร์ไม่ทำงาน) (แก้ไขคำตอบให้ตรงกัน)
SCBuergel.eth

44

หลังจากติดตั้งez_setupคุณควรจะมีeasy_installใช้ได้ ในการติดตั้งให้pipทำ:

easy_install pip

นี่เป็นเพียง pip ที่ติดตั้งใหม่บน python3 วิธีแก้ไขการติดตั้ง pip ใน python 2.7.x
winux

ใช้งานได้กับ Windows เช่นกัน ... ขอบคุณ!
ZE Nir

34

ด้วย macOS 10.15 และ Homebrew 2.1.6 ฉันได้รับข้อผิดพลาดนี้กับ Python 3.7 ฉันแค่ต้องวิ่ง:

python3 -m ensurepip

ตอนนี้ใช้python3 -m pipงานได้สำหรับฉัน


1
ใน Ubuntu ฉันได้รับ "surepip ถูกปิดใช้งานใน Debian / Ubuntu สำหรับ python ของระบบ" ฉันแก้ไขด้วยsudo apt install python3-pip
tuxErrante


5

ฉันพบปัญหาเดียวกันนี้เมื่อฉันพยายามติดตั้งไคลเอนต์ nova

spencers-macbook-pro:python-novaclient root# python  setup.py install    
running install
/usr/bin/python: No module named pip
error: /usr/bin/python -m pip.__init__ install   'pbr>=0.5.21,<1.0' 'iso8601>=0.1.4' 'PrettyTable>=0.6,<0.8' 'requests>=1.1' 'simplejson>=2.0.9' 'six' 'Babel>=0.9.6' returned 1

ฉันใช้ homebrew ดังนั้นฉันจึงแก้ไขปัญหาด้วย sudo easy_install pip

spencers-macbook-pro:python-novaclient root# brew search pip
aespipe     brew-pip    lesspipe    pipebench   pipemeter   spiped  pipeviewer

If you meant "pip" precisely:

Homebrew provides pip via: `brew install python`. However you will then
have two Pythons installed on your Mac, so alternatively you can:
    sudo easy_install pip
spencers-macbook-pro:python-novaclient root# sudo easy_install pip

คำสั่งควรคล้ายกันหากคุณใช้ macports


5

ฉันคิดว่าคำตอบเหล่านี้ข้างต้นไม่สามารถแก้ไขปัญหาของคุณได้

ฉันยังสับสนกับปัญหานี้ครั้งหนึ่ง คุณควรติดตั้งด้วยตนเองpipตามการติดตั้ง pipคำแนะนำอย่างเป็นทางการ(ซึ่งปัจจุบันเกี่ยวข้องกับการรันสคริปต์ Python เดียวget-pip.py )

sudo pip install Djangoหลังจากนั้นเพียง ข้อผิดพลาดจะหมดไป


13
OP ไม่ได้พูดถึง Django ที่ไหนเลย
dskrvk

3

ฉันรู้ว่าเธรดนี้เก่า แต่ฉันเพิ่งแก้ปัญหาด้วยตัวเองบน OS X แตกต่างจากที่อธิบายไว้ที่นี่

โดยทั่วไปฉันติดตั้ง Python 2.7 ใหม่ผ่านการชงและมาพร้อมกับ pip

ติดตั้ง Xcode หากยังไม่ได้:

xcode-select install

ติดตั้ง Brew ตามที่อธิบายไว้ที่นี่ :

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

จากนั้นติดตั้ง Python ผ่าน Brew:

brew install python

และคุณทำเสร็จแล้ว ในกรณีของฉันฉันแค่ต้องการติดตั้งเพียเซอร์เรียล

pip install pyserial

1
ฉันติดตั้ง Xcode แล้ว ทำruby ...และbrew .... เมื่อเรียกใช้ผมได้pip ... -bash: pip: command not foundความคิดใด ๆ ?
เรื่องความหมาย


2

ในเทอร์มินัลลองสิ่งนี้:

ls -lA /usr/local/bin | grep pip

ในกรณีของฉันฉันได้รับ:

-rwxr-xr-x 1 root  root      284 Сен 13 16:20 pip
-rwxr-xr-x 1 root  root      204 Окт 27 16:37 pip2
-rwxr-xr-x 1 root  root      204 Окт 27 16:37 pip2.7
-rwxr-xr-x 1 root  root      292 Сен 13 16:20 pip-3.4

ดังนั้น pip2 || pip2.7 ในกรณีของฉันใช้งานได้และ pip


1

เวอร์ชัน py ของฉันคือ 3.7.3 และ cmd นี้ใช้งานได้

python3.7 -m pip install requests

ร้องขอไลบรารี - สำหรับการดึงข้อมูลจากเว็บ API

สิ่งนี้เรียกใช้โมดูล pip และขอให้ค้นหาไลบรารีคำขอบน PyPI.org (Python Package Index) และติดตั้งในระบบภายในของคุณเพื่อให้คุณสามารถนำเข้าได้


0

ฉันแก้ไขข้อผิดพลาดที่คล้ายกันบน Linux โดยตั้งค่า PYTHONPATH เป็นตำแหน่งไซต์แพ็คเกจ python get-pip.py --prefix /home/chet/pipนี้เกิดขึ้นหลังจากการทำงาน

[chet@rhel1 ~]$ ~/pip/bin/pip -V
Traceback (most recent call last):
  File "/home/chet/pip/bin/pip", line 7, in <module>
    from pip import main
ImportError: No module named pip

[chet@rhel1 ~]$ export PYTHONPATH=/home/chet/pip/lib/python2.6/site-packages

[chet@rhel1 ~]$ ~/pip/bin/pip -V
pip 9.0.1 from /home/chet/pip/lib/python2.6/site-packages (python 2.6)

0

ทดสอบด้านล่างสำหรับ Linux: คุณสามารถดาวน์โหลด pip ได้โดยตรงจากhttps://pypi.org/simple/pip/ untar และใช้โดยตรงกับ python ล่าสุดของคุณ

tar -xvf  pip-0.2.tar.gz
cd pip-0.2

ตรวจสอบเนื้อหา

anant$ ls
docs  pip.egg-info  pip-log.txt  pip.py  PKG-INFO  regen-docs  scripts  setup.cfg  setup.py  tests

ดำเนินการโดยตรง:

anant$ python pip.py --help
Usage: pip.py COMMAND [OPTIONS]

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -E DIR, --environment=DIR
                        virtualenv environment to run pip in (either give the
                        interpreter or the environment base directory)
  -v, --verbose         Give more output
  -q, --quiet           Give less output
  --log=FILENAME        Log file where a complete (maximum verbosity) record
                        will be kept
  --proxy=PROXY         Specify a proxy in the form
                        user:passwd@proxy.server:port. Note that the
                        user:password@ is optional and required only if you
                        are behind an authenticated proxy.  If you provide
                        user@proxy.server:port then you will be prompted for a
                        password.
  --timeout=SECONDS     Set the socket timeout (default 15 seconds)

0

นี่คือชุดคำแนะนำขั้นต่ำสำหรับการอัปเกรดเป็น Python 3 โดยใช้ MacPorts:

sudo port install py37-pip
sudo port select --set pip pip37
sudo port select --set pip3 pip37
sudo pip install numpy, scipy, matplotlib

ฉันรันโค้ดเก่าและใช้งานได้อีกครั้งหลังจากอัปเกรดนี้



0

ใน linux บางประเภทเช่น ubuntu ก่อนอื่นให้ทำการอัปเดต apt-get จากนั้นลองติดตั้งแพ็คเกจ python-pip หากไม่มีการอัปเดต apt-get คุณอาจได้รับข้อผิดพลาดเช่น

E: ไม่พบแพ็คเกจ python-pip

1. อัปเดต:

sudo apt-get update

2. ติดตั้งแพ็คเกจ pip

สำหรับ python2

sudo apt-get install python-pip

หรือ

สำหรับ python3

sudo apt-get install python3-pip

และเสร็จแล้ว!


1
สำหรับ Linux บางประเภท
Greg Allen

@Greg ใช่กล่าวไว้อย่างชัดเจนว่าคุณอาจได้รับข้อผิดพลาดไม่ใช่ว่าคุณจะได้รับข้อผิดพลาด
ANUP SAJJAN

ฉันไม่รู้ว่าคุณกำลังชี้ไปที่อะไร? แต่ฉันได้อัปเดตคำตอบแล้ว
ANUP SAJJAN
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.