ubuntu下python3.7安装、pip3安装使用各种疑难杂症

linux系统版本:ubuntu16.04
python版本:python3.7

ubuntu下安装python实在太麻烦了,牵扯各种版本,16.04默认安装了python2.7和python3.6,但python3.6太老了,很多的包都要求3.7及以上,我们今天演示如何安装python3.7以及它的pip。

如果我们直接在终端输入python,默认使用python2.7:
在这里插入图片描述
也可以使用python --version查看版本:

$ python --version
Python 2.7.12

虽然安装了python2.7,但并没有安装pip:

$ pip --version
The program 'pip' is currently not installed. You can install it by typing:
sudo apt install python-pip

提示告诉了我们安装方法:
sudo apt install python-pip
但我们不要。

pip3也同样没有安装,

pip和pip3都是python中的包管理工具,他们的区别如下:

如果系统中只安装了Python2,那么就只能使用pip。
如果系统中只安装了Python3,那么既可以使用pip也可以使用pip3,二者是等价的。
如果系统中同时安装了Python2和Python3,则pip默认给Python2用,pip3指定给Python3用。

$ pip3
The program 'pip3' is currently not installed. You can install it by typing:
sudo apt install python3-pip

16.04还预置了python3.5:

hongh@ubuntu:~$ python3.5
Python 3.5.2 (default, Jan 26 2021, 13:30:48) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

我们先安装pip3:
sudo apt install python3-pip

查看pip3版本:

$ pip3 --version
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

除了 版本信息,还可以看到安装位置。不过这个版本很老,我们后面进行升级。

pip3是什么东西,研究下:

$ which pip3
/usr/bin/pip3
$ cat /usr/bin/pip3 
#!/usr/bin/python3
# GENERATED BY DEBIAN

import sys

# Run the main entry point, similarly to how setuptools does it, but because
# we didn't install the actual entry point from setup.py, don't use the
# pkg_resources API.
from pip import main
if __name__ == '__main__':
    sys.exit(main())

发现只不过是个python3脚本,调用了pip包的main函数。
而pip包放在了/usr/lib/python3/dist-packages下,注意目录是python3,说明和版本无关,python3.5和python3.7都可以使用。

pip3可以对自己进行升级,我们来升级下pip3,:
注意,pip3虽然叫pip3,但它实际对应的是pip包,所以我们:
pip3 install pip而不是pip3 install pip3
有些会让加-U或者–upgrade选项,我试了不加也可以升级,但千万不要直接升级,因为我试过,升到最新版本,python3.5不支持,

$ pip3 install pip
Collecting pip
  Downloading https://files.pythonhosted.org/packages/ca/bf/4133a0e05eac641ec270bbcef30512b5ad307d7838adb994acd652cc30e3/pip-21.2.3-py3-none-any.whl (1.6MB)
    100% |████████████████████████████████| 1.6MB 25kB/s 
Installing collected packages: pip
Successfully installed pip-21.2.3

升完级pip3就用不了了:
在这里插入图片描述
所以最好指定下版本,我试过了,18.0可以用:
在这里插入图片描述

接着安装python3.7。

ubuntu16.04安装python3.7有两种方法,见:
https://hongjh.blog.csdn.net/article/details/119458920。

python3.7和pip3装完之后,我们就可以使用python3.7 -m pip install xx安装python包了:

$ python3.7 -m pip install pyuavcan
Collecting pyuavcan
  Using cached https://files.pythonhosted.org/packages/00/3e/98e9c2e12fb18cc23bb8f3f4b82a09b496dbbcf286f54f38b9cba30d67cc/pyuavcan-1.2.7-py3-none-any.whl
Collecting numpy<1.20,~=1.17 (from pyuavcan)
  Using cached https://files.pythonhosted.org/packages/b1/e1/8c4c5632adaffc18dba4e03e97458dc1cb00583811e6982fc620b9d88515/numpy-1.19.5-cp37-cp37m-manylinux1_x86_64.whl
Collecting nunavut~=1.2 (from pyuavcan)

  Using cached https://files.pythonhosted.org/packages/84/93/32f766ec89a26ae9e9cc10063a92e9dc37cb8faf7b5f8213f2d60298939b/nunavut-1.4.1-66-py3-none-any.whl
Collecting pyyaml (from nunavut~=1.2->pyuavcan)
  Using cached https://files.pythonhosted.org/packages/7a/a5/393c087efdc78091afa2af9f1378762f9821c9c1d7a22c5753fb5ac5f97a/PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl
Collecting pydsdl~=1.12 (from nunavut~=1.2->pyuavcan)
  Using cached https://files.pythonhosted.org/packages/fe/76/34434ff2b780959e8ad3a0358d5432f2ac379a3b89f0d4f4e0c38b237b1d/pydsdl-1.12.1-py3-none-any.whl
Installing collected packages: numpy, pyyaml, pydsdl, nunavut, pyuavcan
Successfully installed numpy nunavut pydsdl pyuavcan pyyaml
You are using pip version 8.1.1, however version 21.2.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

接着我们再给python3.7安装pip包:

$ python3.7 -m pip install pip
Collecting pip
  Using cached https://files.pythonhosted.org/packages/8a/d7/f505e91e2cdea53cfcf51f4ac478a8cd64fb0bc1042629cedde20d9a6a9b/pip-21.2.2-py3-none-any.whl
Installing collected packages: pip
Successfully installed pip-21.2.2

看结果,直接安装到了最新版本。

后续我们就可以用python3.7下的pip给python3.7安装其他包了:

python3.7 -m pip install pip

python3.7 -m pip install 包名

卸载pip,从卸载输出可以看出pip安装在了/home/hongh/.local/lib/python3.7/site-packages目录,安装的包都会放在该目录下。

$ python3.7 -m pip uninstall pip
Found existing installation: pip 21.2.2
Uninstalling pip-21.2.2:
  Would remove:
    /home/hongh/.local/bin/pip
    /home/hongh/.local/bin/pip3
    /home/hongh/.local/bin/pip3.7
    /home/hongh/.local/lib/python3.7/site-packages/pip-21.2.2.dist-info/*
    /home/hongh/.local/lib/python3.7/site-packages/pip/*
Proceed (Y/n)? y
  Successfully uninstalled pip-21.2.2
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值