无法在树莓派3 b +上卸载python / pip

时间:2019-03-08 18:19:37

标签: python python-3.x raspberry-pi pip raspberry-pi3

我正在研究树莓派3B +。我想将python从2.7升级到3.6。

我下载了提取的python 3.6并制作了它,但是它安装在/usr/local/bin中。

我这次尝试通过指定./configure --prefix=/usr前缀来重新制作,但是make产生了回溯错误。

我还尝试了update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2,它有助于更​​改python版本。

但是,这样做之后,我的点子现在无法正常工作了。 我在/usr/local/bin:pip,pip2.7,pip3,pip3.5,pip3.6中有以下文件。

我尝试删除pip,以便可以使用sudo apt-get remove python-pip重新安装pip,但是它出现以下错误:

pi@raspberrypi:/usr/local/bin $ sudo apt-get remove python-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libpython-all-dev python-all python-all-dev python-keyring
  python-keyrings.alt python-secretstorage python-wheel
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  python-pip
0 upgraded, 0 newly installed, 1 to remove and 6 not upgraded.
1 not fully installed or removed.
After this operation, 671 kB disk space will be freed.
Do you want to continue? [Y/n] y
Traceback (most recent call last):
  File "/usr/bin/apt-listchanges", line 29, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
(Reading database ... 138007 files and directories currently installed.)
Removing python-pip (9.0.1-2+rpt2) ...
  File "/usr/bin/pyclean", line 63
    except (IOError, OSError), e:
                             ^
SyntaxError: invalid syntax
dpkg: error processing package python-pip (--remove):
 subprocess installed pre-removal script returned error exit status 1
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 35, in <module>
    from debpython.version import SUPPORTED, debsorted, vrepr, \
  File "/usr/share/python/debpython/version.py", line 24, in <module>
    from ConfigParser import SafeConfigParser
ModuleNotFoundError: No module named 'ConfigParser'
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 python-pip
E: Sub-process /usr/bin/dpkg returned an error code (1)

表示apt_pkg(或apt-get出现问题)。 当我做pip --version时,我得到:

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 6, in <module>
    from pkg_resources import load_entry_point
ModuleNotFoundError: No module named 'pkg_resources'

我只想拥有功能性pip的python 3.6和2.7(因为我已经在2.7上安装了库)。

2 个答案:

答案 0 :(得分:0)

为什么不为ARM安装miniconda并立即获得Python和所有重要软件包?

wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-armv7l.sh
sudo md5sum Miniconda3-latest-Linux-armv7l.sh
sudo /bin/bash Miniconda3-latest-Linux-armv7l.sh
sudo reboot -h now

答案 1 :(得分:0)

我认为您不知道大多数linux发行版都随附python2和python3。通过输入pythonpip,您将使用操作系统python2和pip2版本。 您可能想要使用的是python3pip3

不可能从python2到python3进行“升级”,因为这是根本的区别,并且它们不兼容。这就是为什么两者都安装的原因。

卸载或升级系统python解释器是一个糟糕的主意,因为您的系统需要它们。对于专业用途,您应该再次考虑版本控制,但是对于python的第一步(和第二步),最好使用操作系统的预安装python解释器。 诸如pyenv或virtualenv之类的解决方案是非常强大的工具,但您可能不想从它开始。