python3.4 pip必须升级python3.5_在ubuntu上将python3.4升级到python3.6会破坏pip

在尝试将Ubuntu上的Python3.4升级到Python3.6时,遇到了pip运行错误。错误源于'importlib._bootstrap'模块缺少'SourceFileLoader'属性。通过执行'apt-get install python3-pip'安装pip,然后使用'pip3 install --upgrade pip'升级到最新版本,解决了问题。进一步升级Virtualenvwrapper并创建新的Virtualenv工作环境,确保使用python3.6,最终成功安装并运行了Django。
摘要由CSDN通过智能技术生成

我目前有python3.4后,我正试图在我的机器上安装python3.6。但是,安装后试图在python3.6下运行pip给我错误:

Traceback (most recent call last):

File "pip3", line 7, in

from pip import main

File "/usr/lib/python3/dist-packages/pip/__init__.py", line 59, in

from pip.log import logger

File "/usr/lib/python3/dist-packages/pip/log.py", line 9, in

import colorama, pkg_resources

File "/usr/lib/python3/dist-packages/pkg_resources.py", line 1520, in

register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider)

AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'

Error in sys.excepthook:

Traceback (most recent call last):

File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook

from apport.fileutils import likely_packaged, get_recent_crashes

File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in

from apport.report import Report

File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in

import apport.fileutils

File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in

from apport.packaging_impl import impl as packaging

File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 20, in

import apt

File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in

import apt_pkg

ModuleNotFoundError: No module named 'apt_pkg'

Original exception was:

Traceback (most recent call last):

File "pip3", line 7, in

from pip import main

File "/usr/lib/python3/dist-packages/pip/__init__.py", line 59, in

from pip.log import logger

File "/usr/lib/python3/dist-packages/pip/log.py", line 9, in

import colorama, pkg_resources

File "/usr/lib/python3/dist-packages/pkg_resources.py", line 1520, in

register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider)

AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'

互联网上有几条关于遇到错误的评论,但是,它们都没有包含任何实际的解决方案建议。有谁知道如何解决这个问题?

我设法解决了它,没有从源头安装任何东西。

这是我做的:

>首先,为Python3.x安装pip(出于一些奇怪的原因,我没有它…)

$ sudo apt-get install python3-pip

这是旧版本……

$ pip3 --version

pip 1.5.4 from /usr/lib/python3/dist-packages (python 3.4)

> …所以升级到最新版本

$ sudo pip3 install --upgrade pip

现在好多了

$ sudo pip3 --version

pip 9.0.1 from /usr/local/lib/python3.4/dist-packages (python 3.4)

>然后升级Virtualenvvwrapper

$ sudo pip3 install --upgrade Virtualenvwrapper

# ...

Successfully installed pbr-3.0.1 six-1.10.0 stevedore-1.22.0 Virtualenv-15.1.0 Virtualenv-clone-0.2.6 Virtualenvwrapper-4.7.2

>现在创建一个新的Virtualenv工作:

$ mkVirtualenv -p `which python3.6`

点子也有效:

$ pip install django

# ...

Successfully installed django-1.11.2 pytz-2017.2

$ pip freeze

Django==1.11.2

pytz==2017.2

注意:现在我意识到它比你要求的要多一点,但是(不知道你到底在哪里失败了)我猜你应该在第2步之后做好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值