【问题标题】:Ubuntu: pip not working with python3.4Ubuntu:pip 不适用于 python3.4
【发布时间】:2014-07-30 23:56:32
【问题描述】:

试图让 pip 在我的 Ubuntu 电脑上运行。 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

来自家庭/用户/.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。

如何解决此问题以正常使用 pip 和 python 3.4? 我正在尝试使用 pycharm,但它的包管理器也遇到了这个问题。

感谢关注!

【问题讨论】:

  • which pip3 输出什么?
  • "程序'pip3'目前没有安装,你可以输入:sudo apt-get install python3-pip "
  • 根据消息安装 python3-pip。你也有 pip-2.7 吗?
  • 太棒了!以这种方式解决了这个问题。非常感谢!
  • 我会删除损坏的/usr/local/bin/pip,以及setuptools/usr/local/lib/python3.4/dist-packages 安装。使用python3-setuptools。如果您想要最新的 pip 和 setuptools,请安装到您的用户站点包 (--user) 或使用虚拟环境。

标签: python ubuntu python-3.x pip


【解决方案1】:

你已经为 python 2 安装了 pip,但没有为 python 3 安装。

Ubuntu 分发 python-pippython3-pippython-setuptoolspython3-setuptools 软件包,您可以根据需要安装(apt-get install 等)。此后,请注意pip 为python 2 安装,pip3 为python 3 安装(类似于pythonpython3)。

Setuptools 可以说是为包提供了python 的“构建”过程,而Pip 提供了它的“安装”过程。通常你想要两个都在场。

如果您想要最新的 pip / setuptools,您可以随时从 PyPA 的引导站点获取它:

$ 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 输出中的某些内容传递给 python3.4 解释器是非常不安全的。
  • @NikolayGolub 也不是不能去网址先看一下。有了 HTTPS,它的风险可能并不比使用包管理器大。
  • 是的,但这也是一个信任该站点背后人员的安全技能的问题。
  • 我们质疑的安全技能的人也恰好是 pip 和 PyPI 的开发人员。如果您担心,您可以使用wget 并预先读取文件,而不是直接将其通过管道传输到 python。
  • 我收到了一些错误Exception: Traceback (most recent call last): File "/usr/lib/python3.4/shutil.py", line 523, in move os.rename(src, real_dst) PermissionError: [Errno 13] Permission denied: '/usr/bin/pip' -&gt; '/tmp/pip-403n951_-uninstall/usr/bin/pip' 。所以我试过this solution
【解决方案2】:
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/

【讨论】:

  • 在 Linux Mint 20.2 上不起作用我收到 ModuleNotFoundError: No module named 'distutils.util'
【解决方案3】:

这适用于我的 Ubuntu 19.04:

sudo apt install python3-pip

然后pip3python3 -m pip安装python包。

【讨论】:

    【解决方案4】:

    在我的树莓派上运行这个命令时遇到了类似的问题

    python3.4 -m pip install RPi.GPIO
    

    得到了这个错误

    /usr/bin/python3.4: No module named pip
    

    通过安装python3-pip解决了

    sudo apt-get install python3-pip
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 1970-01-01
      • 1970-01-01
      • 2016-07-14
      • 1970-01-01
      • 2014-11-16
      • 1970-01-01
      相关资源
      最近更新 更多