Linux安装python3

1.安装python3

1.1.下载python3

wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz

1.2.创建/usr/local/python3目录

mkdir -p /usr/local/python3

ps:可根据个人喜好设置目录

1.3.解压python包

tar -zxf Python-3.6.8.tgz

1.4.编译安装zlib

cd Modules/zlib
./configure
make install

ps:如果不安装zlib,会出现后文中提到的错误2

1.5.编译python

cd Python-3.6.1
./configure --prefix=/usr/local/python3

--prefix=/usr/local/python3是将python包编译到步骤2创建的目录中。

1.6.安装python3

make && make install

1.7.添加环境变量

在文件~/.bash_profilePATH变量后面添加/usr/local/python3/bin,类似

PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH

添加环境变量后,保存退出,运行source命令使其立即生效
/usr/local/python3/bin,类似

source ~/.bash_profile

1.8.验证python及pip

[root@localhost python3]# python3 -V
Python 3.6.8
[root@localhost python3]# pip3 -V
pip 9.0.1 from /usr/local/python3/lib/python3.6/site-packages (python 3.6)

如果需要将pip3改为pip(毕竟安装python包的时候,习惯于pip install package这种形式),则需要将建立软连接

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

ps:将pip命令指向/usr/local/python3/bin/pip3
修改后,我们就可以用pip install package来安装包了。

2.可能错误与警告

错误1

subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.

解决方法

find / -name lsb_release
rm -rf /usr/bin/lsb_release

错误2

zipimport.ZipImportError: can't decompress data; zlib not available(https://www.cnblogs.com/paul8339/p/11595724.html)

解决方法

cd Modules/zlib
./configure
make  install

错误3

ImportError: cannot import name HTTPSHandler

原因在于openssl,openssl-devel两个文件包未正确安装
解决方法

yum install openssl -y
yum install openssl-devel -y

安装完成后,重新编译并安装python:

cd Python-3.6.1
./configure --prefix=/usr/local/python3
make && make install

错误4

Can't connect to HTTPS URL because the SSL module is not available.

原因在于opensslopenssl-devel两个文件包未正确安装。
用下来的命令来安装:

yum install openssl -y
yum install openssl-devel -y

安装完成后,重新执行安装步骤1.4~1.6。

错误5

ImportError: cannot import name HTTPSHandler

原因与错误4相同,参考错误4解决方案。

错误6

ModuleNotFoundError: No module named '_bz2'

缺少_bz2.cpython-36m-x86_64-linux-gnu.so文件,下载该文件,并将其放于/usr/local/python3/lib/python3.6/lib-dynload/目录下即可
注1:安装目录需要根据自己的实际情况来调整。
注2:如果是python3.7版本,则需要将文件名改为_bz2.cpython-37m-x86_64-linux-gnu.so
提供该文件的百度云链接
链接: https://pan.baidu.com/s/1HQA_tD5INwihCR5M_ckULA
提取码: ujjn

警告1

pip list命令时,出现如下错误

DEPRECATION: The default format will switch to columns in the future. 
You can use --format=(legacy|columns)
 (or define a format=(legacy|columns) in your pip.conf under the [list]

解决方法
1.先确保你在~/.pip 目录下有文件pip.conf
如果没有就创建这个文件:vim ~/.pip/pip.conf
2.在pip.conf文件里面加入代码:

[list] 
format=columns

添加后,再次运行pip list,该警告就会消失,而且结果显示很友好。

问题1

在Python命令行中输入退格出现^H
解决方法
安装 libreadline-dev 后重新 make && make install Python安装包

apt-get install libreadline-dev
CentOS: yum install readline-devel
Debain: apt-get install libreadline-dev
最后编辑于:2025-04-21 11:16:29


喜欢的朋友记得点赞、收藏、关注哦!!!

你可能感兴趣的:(面试题汇总与解析,课程设计,spring,boot,vue.js,java,mysql)