centos7 python2和python3共存
一、解决Python2 pip问题
在centos7中安装好操作系统,自带的是Python2的版本,但是并没有pip的方法,我们需要自行安装 报名为python-pip
# 默认python2的版本
[root@operation ~]# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> # 安装Python2的pip
[root@operation ~]# yum install epel-release -y
[root@operation ~]# yum -y install python-pip # 安装完成后不是最新的pip版本要进行升级
[root@operation ~]# pip install --upgrade pip # 测试
[root@operation ~]# pip -V(大写V)
pip 18.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) # 现在可以使用pip进行对Python2 进行安装Python包了
# 第一种方法:
[root@operation ~]# pip install 包名 # 第二种方法:
[root@operation ~]# python -m pip install pymongo (安装Python2的包) # 若是安装的Python3
[root@operation ~]# python3 -m pip install pymongo (安装Python3的包)
二、安装Python3
安装依赖关系
[root@operation ~]# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make 注:不能忽略相关包,我之前就没有安装readline-devel导致执行python模式无法使用键盘的上下左右键;
下载源码包
[root@operation ~]# wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tar.xz 注:如果没有wget命令可以使用 yum -y install wget 安装
注:我这里安装的是3.6.6的Python版本 如果想要安装其他的版本可以直接修改版本号
解压、编译、安装
# 解压
[root@operation ~]# tar -xvJf Python-3.6.6.tar.xz # 编译
[root@operation ~]# cd Python-3.6.6
[root@operation Python-3.6.6]# ./configure prefix=/usr/local/python3 # 安装
[root@operation Python-3.6.6]# make && make install 注:没有报错及安装成功,如果报错可以看看是不是一些依赖包没有安装 自行解决不了可以留言评论或者直接联系我
设置软连接
# 安装完成还是不可以直接在终端输入python3 进入编译器的,我们需要设置软链接
[root@operation Python-3.6.6]# ln -s /usr/local/python3/bin/python3 /usr/bin/python3 # 这样直接执行Python3 就可以进入Python3版本的解释器了
[root@operation Python-3.6.6]# python3
Python 3.6.6 (default, Oct 12 2018, 12:02:11)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
配置Python3的pip
# 设置完python执行后 python3的pip还是不能的用的,也是需要设置的软链接才可以的,在python3的解压目录下是有pip3的命令的
[root@operation Python-3.6.6]# cd /usr/local/python3/bin/
[root@operation bin]# ll pip*
-rwxr-xr-x 1 root root 232 10月 12 12:08 pip
-rwxr-xr-x 1 root root 232 10月 12 12:08 pip3
-rwxr-xr-x 1 root root 232 10月 12 12:08 pip3.6 # 我们需要做个软链接即可
[root@operation bin]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 # 安装完成后不是最新的pip3版本要进行升级
[root@operation ~]# pip3 install --upgrade pip
测试
# 测试
[root@operation bin]# pip3 -V
pip 18.1 from /usr/local/python3/lib/python3.6/site-packages/pip (python 3.6) # 使用
[root@operation bin]# pip3 install 包名 或者
[root@operation bin]# python3 -m pip install 包名
三、安装TAB补全的解释器(ipython)
安装(我这里安装双版本的)
# 安装Python2的ipython
# 第一种方法
[root@operation ~]# pip install ipython
# 第二种方法
[root@operation ~]# python -m pip install ipython # 安装Python3的ipython
# 第一种方法
[root@operation ~]# pip3 install ipython
# 第二种方法
[root@operation ~]# python3 -m pip install ipython 注:安装无报错安装成功
双版本设置软链接
# 因为是安装了Python的双版本而且安装的包名都叫 ipython 所有我们执行ipython的时候使用的是安装的python2的版本,我们要使用双版本就要使用软链接 [root@operation ~]# ipython
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
Type "copyright", "credits" or "license" for more information. IPython 5.8.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details. In [1]: # 设置Python3的ipython 使用软链接
[root@operation ~]# ln -s /usr/local/python3/bin/ipython /usr/bin/ipython3
测试
# Python2的ipython
[root@operation ~]# ipython
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
Type "copyright", "credits" or "license" for more information. IPython 5.8.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details. In [1]: # Python3的ipython
[root@operation ~]# ipython3
Python 3.6.6 (default, Oct 12 2018, 12:02:11)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.0.1 -- An enhanced Interactive Python. Type '?' for help. In [1]:
centos7 python2和python3共存的更多相关文章
- CentOS7 Python2 和Python3 共存(Python3安装)【转】
1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5. 使用 python -V 命令查看一下是否安 ...
- Python2 和 Python3 共存于 Centos7
一.解决Python2 pip问题 centos7自带的是Python2,但是并没有安装pip,我们需要自行安装 包名为 python-pip # yum install epel-release - ...
- CentOS7保留默认Python版本并安装更新Python2和Python3共存
CentOS 7 默认的python版本是python2.7.5.因为yum依赖于默认的python版本的缘由,所以要先保留默认版本,并修改yum文件头部后,才能开始安装更新python2和pytho ...
- python2 和 python3共存,并且分开使用
目录 一.本文使用的python版本安装 二.安装python2 和 Python3 三.修改名称,配置环境,实现共存 1.将C:\Python36中的python.exe修改为python3.exe ...
- Windows系统配置Python环境,python2和python3共存
Windows系统配置python2和python3共存 1.下载python: https://www.python.org/downloads/ 注:选择需要的版本(python2 or ...
- Django框架,python2和python3共存的情况下,创建Django项目
一.python2和python3共存的情况下,直接使用 django-admin startproject Django-project 这个时候系统默认使用的是python2创建,可能由于pyth ...
- Python2.*与Python3.*共存问题
安装Python 2.7后,本来在3.4下能正常使用的脚本无法运行.网上有的方法是把两个版本的主程序分别改名为python2和python3,人眼判断脚本,手输命令行执行脚本.像我这样喜欢双击.拖拽的 ...
- 用 Anaconda 完美解决 Python2 和 python3 共存问题
Python3 被越来越多的开发者所接受,同时让人尴尬的是很多遗留的老系统依旧运行在 Python2 的环境中,因此有时你不得不同时在两个版本中进行开发,调试. 如何在系统中同时共存 Python2 ...
- windows下 python2 和python3 共存
目前我们在国内网站上看到的两者共存的方法就是将其中一个的python.exe重命名.虽说在一定程度上可行,但存在一个重大的隐患,就是修改了名字的那个python对应的pip将无法使用. 下面说一下具体 ...
随机推荐
- error C2143: syntax error : missing ';' before 'type'
许久之前,就想看看C和C++,看看这两种神奇的编程语言,但是一直被这样或者那样的琐事给耽搁了(狂喷自己的拖延症). 今天翻开自己的移动硬盘找到一本古老的书籍:<The C Programming ...
- sublime text2一些使用技巧+插件
一.前言 作为一个前端,有一款好的开发利器是必不可少的,editplus.notepad++都是不错的工具,体积轻巧,启动迅速(dw太浮肿了).最近,又有一款新的编辑器诞生,席卷前端界,惹得无数喜爱, ...
- Swift: 用Alamofire做http请求,用ObjectMapper解析JSON
跟不上时代的人突然间走在了时代的前列,果然有别样的风景.首先鄙视一下AFNetworking.这个东西实在太难用了.不想封装都不行,要不写一大堆代码. NSURL *URL = [NSURL URLW ...
- spring整合quartz时间任务调度框架
spring整合quartz框架 1.创建maven工程 2.导入jar包(pom.xml) <dependencies> <dependency> <groupId&g ...
- (树状数组+离散化)lines--hdu --5124
http://acm.hdu.edu.cn/showproblem.php?pid=5124 lines Time Limit: 5000/2500 MS (Java/Others) Memor ...
- C/C++ 打开串口和关闭串口
通常使用下列函数来通过Win系统来对外围设备进行通信处理: 0. 前言 做串口方面的程序,使用CreateFile打开串口通信端口.在对串口操作之前,需要首先打开串口.使用C++进行串口编程,如果采用 ...
- NoSQL数据库的分布式算法
本文译自 Distributed Algorithms in NoSQL Databases 系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性 ...
- spring boot 整合 mybatis 以及原理
同上一篇文章一样,spring boot 整合 mybatis过程中没有看见SqlSessionFactory,sqlsession(sqlsessionTemplate),就连在spring框架整合 ...
- sed,grep,进阶+source+export+环境变量
三剑客之sed 概括流程:从文件或管道中,可迭代读取. 命令格式: sed(软件) 选项 sed命令 输入文件 增 两个sed命令: a: 追加文本到指定行后 i: 插入到指定行前 sed -i '1 ...
- To datafix AR DATE
http://www.cnblogs.com/benio/archive/2012/07/07/2580203.html AR transactions should be created on 6- ...