1、安装依赖包
1)首先安装gcc编译器,gcc有些系统版本已经默认安装,通过 gcc --version
查看,没安装的先安装gcc,yum -y install gcc
2)安装其它依赖包,(注:不要缺少,否则有可能安装python出错,python3.7.0以下的版本可不装 libffi-devel )
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
2、下载安装
以下载python3.5.10为例。下载地址
1)下载
wget https://www.python.org/ftp/python/3.5.10/Python-3.5.10.tgz
2)解压Python-3.5.10.tgz
tar -zxvf Python-3.5.10.tgz
3)建立一个空文件夹,用于存放python3程序
mkdir -p /home/liuliu/software/Python/3.5.10
4)执行配置文件,编译,编译安装
cd Python-3.5.10
./configure --enable-optimizations --prefix=/home/liuliu/software/Python/3.5.10
make && make install
安装完成没有提示错误便安装成功了
5)建立软连接
不想建立软链接,可以命令别名 在~/.bashrc文件里加 alias python3='具体路径'
6)测试一下python3是否可以用
$./python3
Python 3.5.10 (default, Oct 20 2020, 17:55:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("hello world!")
hello world!
>>> exit()
$ pip3 --version
pip 9.0.1 from /home/liuliu/software/Python/3.5.10/lib/python3.5/site-packages (python 3.5)
可以看到python3.5可以正常使用
3. Python pip 安装与使用
pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。
pip --version # Python2.x 版本命令
pip3 --version # Python3.x 版本命令
如果还未安装,则可以使用以下方法来安装:
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
$ sudo python get-pip.py # 运行安装脚本
注意:用哪个版本的 Python 运行安装脚本,pip 就被关联到哪个版本,如果是 Python3 则执行以下命令:
$ sudo python3 get-pip.py # 运行安装脚本。
一般情况 pip 对应的是 Python 2.7,pip3 对应的是 Python 3.x。
3.1 pip 最常用命令
显示版本和路径
pip --version
获取帮助
pip --help
升级 pip
pip install -U pip
如果这个升级命令出现问题 ,可以使用以下命令:
sudo easy_install --upgrade pip
pip install SomePackage # 最新版本
pip install SomePackage==1.0.4 # 指定版本
pip install 'SomePackage>=1.0.4' # 最小版本
pip install --upgrade SomePackage
升级指定的包,通过使用==
, >=
,<=
, >
, <
来指定一个版本号。
卸载包
pip uninstall SomePackage
搜索包
pip search SomePackage
显示安装包信息
pip show
查看指定包的详细信息
pip show -f SomePackage
列出已安装的包
pip list
查看可升级的包
pip list -o
3.2 pip 升级
Linux 或 macOS
pip install --upgrade pip # python2.x
pip3 install --upgrade pip # python3.x
Windows 平台升级:
python -m pip install -U pip # python2.x
python -m pip3 install -U pip # python3.x
3.3 开源软件镜像站
使用国内镜像速度会快很多:
临时使用:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
例如,安装 Django:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Django
如果要设为默认需要升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
注意事项
如果 Python2 和 Python3 同时有 pip,则使用方法如下:
Python2:
python2 -m pip install XXX
Python3:
python3 -m pip install XXX
若由于一些局域网的原因,使用 pip 出现 “connection timeout”,连接超时可以使用国内的镜像网站下载:
命令如下:
pip install -i http://pypi.douban.com/simple --trusted-host pypi.douban.com packagename # packagename是要下载的包的名字
pip install -i http://e.pypi.python.org --trusted-host e.pypi.python.org --upgrade pip # 升级pip
4. 常见问题
(1)存在多个Python版本,在指定的版本中安装包或者模块
以Python 3.7安装requests模块为例说明:
py -3.7 -m pip install requests
或者指定版本路径:
/path/python3.7/pip3 install requests
(2)如何一次性安装多个包
要在命令行上安装多个软件包,只需将它们作为以空格分隔的列表传递,例如:
pip install wsgiref boto
(3)make编译报错 Could not import runpy module
导致原因:
- 在低版本的gcc版本中带有
--enable-optimizations
参数时会出现上面问题 - gcc 8.1.0修复此问题
解决方法如下:
- 1、升级gcc至8.1.0【不推荐】
- 2、
./configure
参数中去掉--enable-optimizations
(4)UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd4 in position 4599: invalid continuation byte
原因:中文字符的Unicode编码0x0800-0xFFFF之间,(utf-8包含了部分汉字)
当你试图将该“中文字符”转成U码的utf-8时超出了其范筹.而GBK 规范收录了 ISO 10646.1 中的全部 CJK 汉字和符号,并有所补充
解决方法:将.decode(‘utf-8’)改为.decode(‘gbk’)
#fp = open('data.txt', encoding='UTF-8')
fp = open('data.txt', encoding='gbk')
三、报错
1、解决pip报错
from pip._internal.cli.main import main
ImportError: No module named main
解决
python 3
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
python 2.7
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
sudo python get-pip.py
conda create -n Python-v3.11.0
export PATH=/bin/:$PATH
source activate Python-v3.11.0
conda install python=3.11.0 -c conda-forge
https://blog.csdn.net/Scarlett2025/article/details/117446536