这是我第一次在我刚刚安装了几天的 Ubuntu 18.04 LTS 中安装 pip。 使用“curl”命令下载“get-pip.py”文件并运行命令“python3 get-pip.py”后,我收到错误消息。 错误消息如下。
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
错误信息:
Traceback (most recent call last):
File "get-pip.py", line 20649, in <module>
main()
File "get-pip.py", line 197, in main
bootstrap(tmpdir=tmpdir)
File "get-pip.py", line 82, in bootstrap
import pip._internal
File "/tmp/tmpaa4p6j0e/pip.zip/pip/_internal/__init__.py", line 42, in <module>
File "/tmp/tmpaa4p6j0e/pip.zip/pip/_internal/cmdoptions.py", line 16, in <module>
File "/tmp/tmpaa4p6j0e/pip.zip/pip/_internal/index.py", line 25, in <module>
File "/tmp/tmpaa4p6j0e/pip.zip/pip/_internal/download.py", line 35, in <module>
File "/tmp/tmpaa4p6j0e/pip.zip/pip/_internal/locations.py", line 10, in <module>
ImportError: cannot import name 'sysconfig'
sysconfig
是一个标准库模块。 如果您运行python3 -c "import sysconfig"
是否有效,还是会出现相同的导入错误? 如果您遇到导入错误,那么您的 Python 安装就以某种方式损坏了。 如果从 Python 导入确实有效,那么我们需要进一步挖掘以了解get-pip.py
无法在您的机器上找到标准库的原因。
看起来您的python3安装已损坏,因为distutils是stdlib的一部分并且应该存在。 我想知道 Ubuntu 是否做了一些奇怪的事情,比如默认不安装整个 stdlib? 我不会把它放在他们身上。 可能值得检查...
似乎没有安装python3-distutils
。
sudo apt install python3-distutils
解决这个问题。
是的 Ubuntu :-(
在这种情况下,您可以关闭此问题吗?
@Tarliton有效! 十分感谢!
@pfmoore我已经解决了我的问题! 非常感谢!
我在新的 18.04 上遇到了同样的问题。 我可以import sysconfig
没有错误 - 你仍然建议安装python3-distutils
吗?
@ryanfox你使用的是pip3
还是pip
(2.7)? python3-distutils
用于pip3
。 我还需要python3-setuptools
来实际安装一个 python 库。
18.04 没有安装 2.7。
@ryanfox在同样的情况下,我也可以导入 sysconfig,但我必须安装python3-distutils
以便我可以使用pip3
。
@ryanfox当您apt-get install pip
,将安装 python2.7 并且 pip 将基于 python 2.7。 当您安装pip3
,它将是基于 python3 的,是的。
我通过 get-pip.py 安装了 pip:
$ python3.6 get-pip.py
当然,这不会安装 2.7。
@ryanfox仍然 - 您是否确保存在完整的 python stdlib?
Python3.6
和Python3.6-dev
已安装。 我可以成功import sysconfig
。 这是否意味着存在完整的标准库? 我会这么想的。
对于它的价值,我 apt 安装了python3-distutils
并且它现在对我有用。 我只是觉得这很奇怪,考虑到我_认为_我有完整的 python 安装。
谢谢, @Tarliton ,您的解决方案奏效了。
似乎没有安装
python3-distutils
。sudo apt install python3-distutils
解决这个问题。
在窗户上?
此线程已被自动锁定,因为它在关闭后没有任何近期活动。 请为相关错误打开一个新问题。
最有用的评论
似乎没有安装
python3-distutils
。解决这个问题。