Centos7下部署两套python版本并存环境的操作记录
时间:2022-04-23
本文章向大家介绍Centos7下部署两套python版本并存环境的操作记录,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
需求说明: centos7.2系统的开发机器上已经自带了python2.7版本,但是开发的项目中用的是python3.5版本,为了保证Centos系统的正常运行,以及节省机器资源(不想因此再申请另外一台开发机器部署python3.5),所以需要安装python3.5与python2.7共存的开发环境。具体操作记录如下:
1)安装相关包
[root@qd-vpc-rec-dev01 ~]# yum -y install epel-release
[root@qd-vpc-rec-dev01 ~]# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
2) 编译安装python3.5
[root@qd-vpc-rec-dev01 ~]# yum -y install xz
[root@qd-vpc-rec-dev01 ~]# wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tar.xz
[root@qd-vpc-rec-dev01 ~]# tar xf Python-3.5.3.tar.xz -C /usr/local/src/
[root@qd-vpc-rec-dev01 ~]# cd /usr/local/src/Python-3.5.3
[root@qd-vpc-rec-dev01 Python-3.5.3]# ./configure --prefix=/usr/local/python3
[root@qd-vpc-rec-dev01 Python-3.5.3]# make && make install
从 Python 3.4 开始就已经自带了pip和easy_install(setuptools 包带的命令) 包管理命令,你可以在 /usr/local/python3/bin/ 目录下看到,查看一下已经安装的扩展包:
[root@qd-vpc-rec-dev01 Python-3.5.3]# ll /usr/local/python3/bin/
total 24080
lrwxrwxrwx 1 root root 8 Sep 27 19:40 2to3 -> 2to3-3.5
-rwxr-xr-x 1 root root 109 Sep 27 19:40 2to3-3.5
-rwxr-xr-x 1 root root 250 Sep 27 19:40 easy_install-3.5
lrwxrwxrwx 1 root root 7 Sep 27 19:40 idle3 -> idle3.5
-rwxr-xr-x 1 root root 107 Sep 27 19:40 idle3.5
-rwxr-xr-x 1 root root 222 Sep 27 19:40 pip3
-rwxr-xr-x 1 root root 222 Sep 27 19:40 pip3.5
lrwxrwxrwx 1 root root 8 Sep 27 19:40 pydoc3 -> pydoc3.5
-rwxr-xr-x 1 root root 92 Sep 27 19:40 pydoc3.5
lrwxrwxrwx 1 root root 9 Sep 27 19:40 python3 -> python3.5
-rwxr-xr-x 2 root root 12309757 Sep 27 19:39 python3.5
lrwxrwxrwx 1 root root 17 Sep 27 19:40 python3.5-config -> python3.5m-config
-rwxr-xr-x 2 root root 12309757 Sep 27 19:39 python3.5m
-rwxr-xr-x 1 root root 3088 Sep 27 19:40 python3.5m-config
lrwxrwxrwx 1 root root 16 Sep 27 19:40 python3-config -> python3.5-config
lrwxrwxrwx 1 root root 10 Sep 27 19:40 pyvenv -> pyvenv-3.5
-rwxr-xr-x 1 root root 244 Sep 27 19:40 pyvenv-3.5
[root@qd-vpc-rec-dev01 Python-3.5.3]# /usr/local/python3/bin/pip3 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] section) to disable this warning.
pip (9.0.1)
setuptools (28.8.0)
-----------------------------------------------------------------------------------------------------------------------------
如果要更新pip,操作如下:
[root@qd-vpc-rec-dev01 Python-3.5.3]# /usr/local/python3/bin/pip3 install --upgrade pip
[root@qd-vpc-rec-dev01 Python-3.5.3]# /usr/local/python3/bin/pip3 list
-----------------------------------------------------------------------------------------------------------------------------
3)创建软连接
[root@qd-vpc-rec-dev01 Python-3.5.3]# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
4) 执行python -V查看Python是否安装成功。
[root@qd-vpc-rec-dev01 Python-3.5.3]# python3 -V
Python 3.5.3
自带的版本为:
[root@qd-vpc-rec-dev01 Python-3.5.3]# python -V
Python 2.7.5
[root@qd-vpc-rec-dev01 Python-3.5.3]# which python
/usr/bin/python
[root@qd-vpc-rec-dev01 Python-3.5.3]# which python3
/usr/bin/python3
[root@qd-vpc-rec-dev01 Python-3.5.3]# python
Python 2.7.5 (default, Nov 6 2016, 00:28:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
[root@qd-vpc-rec-dev01 Python-3.5.3]# python3
Python 3.5.3 (default, Sep 27 2017, 19:38:56)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
也就是说,python指令表示的是2.7.5版本,python3指令表示的3.5.3版本。
开发项目里具体使用那个版本的python,就使用对应的全路径的python指令。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法