Ubuntu:pip无法与python3.4一起使用

32 投票
4 回答
64546 浏览
提问于 2025-04-18 09:15

我在我的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这个文件不存在。

我该怎么解决这个问题,让pip和python 3.4正常工作呢?我正在尝试使用pycharm,但它的包管理器也遇到了同样的问题。

谢谢关注!

4 个回答

4

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

python3.4 -m pip install RPi.GPIO

然后出现了这个错误。

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

我通过安装 python3-pip 来解决这个问题。

sudo apt-get install python3-pip
12

在我的Ubuntu 19.04上,这个方法有效:

sudo apt install python3-pip

然后可以用 pip3 或者 python3 -m pip 来安装Python的包。

14
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/

29

你已经为 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 安装这些工具,可能需要使用管理员权限,也就是 sudo

撰写回答