當前位置: 首頁>>技術問答>>正文


Ubuntu:pip不能使用python3.4

, , ,

問題描述

試圖讓我的Ubuntu電腦上的pip工作。 pip似乎適用於python2.7,但不適用於其他人。

這是問題所在:

$ pip
Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg /pkg_resources.py", line 357, in load_entry_point
def get_entry_info(dist, group, name):
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg/pkg_resources.py", line 2394, in load_entry_point
break
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg/pkg_resources.py", line 2108, in load
name = some.module:some.attr [extra1,extra2]
ImportError: No module named 'pip'

$ which pip
/usr/local/bin/pip

$ python2.7 -m pip //here can be just python, btw
Usage:   
/usr/bin/python2.7 -m pip <command> [options]
//and so on...

$ python3.4 -m pip
/usr/bin/python3.4: No module named pip

從home /user /.pip /pip.log:

Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 283, in run
requirement_set.install(install_options, global_options, root=options.root_path)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1431, in install
requirement.uninstall(auto_confirm=True)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 598, in uninstall
paths_to_remove.remove(auto_confirm)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1836, in remove
renames(path, new_path)
File "/usr/lib/python2.7/dist-packages/pip/util.py", line 295, in renames
shutil.move(old, new)
File "/usr/lib/python2.7/shutil.py", line 303, in move
os.unlink(src)
OSError: [Errno 13] Permission denied: '/usr/bin/pip'

沒有/usr /bin /pip btw。

我怎麽能解決這個問題才能正常使用pip和python 3.4?我正在嘗試使用pycharm,但它的包管理器也陷入了這個問題。

謝謝你的關注!

最佳解決方案

你已經為python 2安裝了pip,但沒有安裝python 3。

Ubuntu分發python-pippython3-pippython-setuptoolspython3-setuptools軟件包,您可以根據需要安裝(apt-get install等)。此後,請注意pip安裝用於python 2,pip3安裝用於python 3(類似於pythonpython3)。

Setuptools可以說是為包提供了python的”build”進程,而Pip提供了它的”install”進程。通常你想要兩個在場。

如果你想要最新的pip /setuptools,你總是可以從PyPA的bootstrap網站獲得它:

$ curl https://bootstrap.pypa.io/get-pip.py | python3.4

之後,您可以為適當的python安裝最新的setuptools,例如

$ python{2.7,3.4} -m pip install -U setuptools

如果您嘗試為係統python安裝這些,則可能需要root /sudo

次佳解決方案

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python3 get-pip.py

確認其安裝:

pip3 --version    

要麽

python3 -m pip --version

現在繼續使用以下方法安裝所需的軟件包(例如numpy):

pip3 install numpy

要麽

python3 -m pip install numpy

以下是參考:https://pip.pypa.io/en/stable/installing/

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/7214.html,未經允許,請勿轉載。