Linux系统安装Python3环境
点击上方“开源Linux”,选择“设为星标”
回复“学习”获取独家整理的学习资料!
本文基于如下Linux系统版本:
1、默认情况下,Linux会自带安装Python,可以运行python --version命令查看,如图:
我们看到Linux中已经自带了Python2.7.5。再次运行python命令后就可以使用python命令窗口了(Ctrl+D退出python命令窗口)。
2、查看Linux默认安装的Python位置
看到/usr/bin/python和/usr/bin/python2都是软链接,/usr/bin/python指向/usr/bin/python2,而/usr/bin/python2最终又指向/usr/bin/python2.7。所以运行python/python2/python2.7是一样的,如图:
3、安装python3
(1)登录https://www.python.org/downloads/source/,找到对应版本(我们以Python 3.6.5为例)如图:
下载Python-3.6.5.tgz
(2)文件上传
将文件上传到Linux系统的某个目录下,根据自己情况上传,本例上传到了/root/tools目录下,如图:
(3)解压
执行tar -zxvf Python-3.6.5.tgz命令,将文件解压到当前目录,如图:
(4)准备编译环境
执行如下命令:
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
安装python需要的依赖。成功后(Complete!),如图:
如果python是3.7版本,还需要安装libffi-devel。整个编译过程1分钟左右。
如果遇到如下问题:
Loaded plugins: fastestmirror
00:00:00
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"
One of the configured repositories failed (Unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
一般是不能连接外网,每个情况不一样,我的解决方案,执行如下命令
vi /etc/sysconfig/network-scripts/ifcfg-ens33
每个人的Linux中ifcfg-ens33名称不一定完全一样。我的配置如下:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=296fb7a9-961a-46ea-bc1b-678cca49d40a
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.189.111
GATEWAY=192.168.189.2
NETMASK=255.255.255.0
DNS1=8.8.8.8
PREFIX=24
IPV6_PRIVACY=no
配置好保存,执行service network restart重启网络服务。然后再重新执行上面的yum安装命令即可。
(5)编译安装
执行cd Python-3.6.5进入解压后的Python-3.6.5目录下,依次执行如下三个命令:
./configure --prefix=/root/training/Python-3.6.5
make
make install
其中--prefix是Python的安装目录,安装成功后,如图:
我们看到,同时安装了setuptools和pip工具。进入到/root/training/Python-3.6.5安装目录,如图:
(6)创建软链接
还记得开始,Linux已经安装了python2.7.5,这里我们不能将它删除,如果删除,系统可能会出现问题。我们只需要按照与Python2.7.5相同的方式为Python3.6.5创建一个软链接即可,我们把软链接放到/usr/local/bin目录下,如图:
此时,我们在命令窗口运行python3,如图:
安装成功!当然此时还是可以使用Python2.7.5版本(运行python/python2/python2.7即可)。
(7)配置环境变量
配置环境变量主要是能快速使用pip3安装命令。
执行 vi ~/.bash_profile,打开配置文件,添加如下配置:
#配置python
export PYTHON_HOME=/root/training/Python-3.6.5
export PATH=$PYTHON_HOME/bin:$PATH
保存退出(:wq),执行source ~/.bash_profile命令使配置生效。执行echo命令,查看是否配置成功,如图:
原文来自:http://suo.im/6igslu
作者:lebboop-L
- End -
关注「开源Linux」加星标,提升IT技能
Linux系统安装Python3环境的更多相关文章
- Linux系统安装python3
Centos7系统安装python3 在安装前需要安装依赖环境包,先安装gcc 编译器,命令如下: yum -y install gcc gcc-c++ make 1.首先查看是否安装python,系 ...
- linux系统安装pycharm环境
1.安装Pycharm环境参考网站: https://www.linuxidc.com/Linux/2018-04/152003.htm 注册:http://idea.lanyus.com/ wind ...
- linux系统安装python3和pip
一.安装python 1.安装依赖环境 yum install gcc -y yum -y install zlib-devel bzip2-devel openssl-devel ncurses-d ...
- linux安装python3环境并配置虚拟环境
1.安装必要库 yum -y install gcc yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite- ...
- linux系统安装yum环境
http://blog.sina.com.cn/s/blog_63d8dad80101cn2s.html 1.卸载rhel的默认安装的yum包 查看yum包 rpm -qa|grep yum 卸载之 ...
- linux系统安装java环境
参考资料:实测可用 https://www.cnblogs.com/xuliangxing/p/7066913.html
- Linux下安装python3环境搭建
Linux下python3环境搭建 Linux安装软件有哪些方式? rpm软件包 手动安装 拒绝此方式 需要手动解决依赖关系 yum自动化安装 自动处理依赖关系 非常好用 源代码编译安装,可自定义的功 ...
- hadoop伪分布式环境搭建之linux系统安装教程
本篇文章是接上一篇<超详细hadoop虚拟机安装教程(附图文步骤)>,上一篇有人问怎么没写hadoop安装.在文章开头就已经说明了,hadoop安装会在后面写到,因为整个系列的文章涉及到每 ...
- Linux上部署Java应用+Python3环境搭建
给了Linux的测试环境,目前需要install JDK, Tomcat,此处记录下小白的操作过程. 1. 查询Linux发行版本,包括内核信息 (1) Linux查询内核信息 $ uname -a ...
随机推荐
- UML 中有哪些常用的图?
UML 定义了多种图形化的符号来描述软件系统部分或全部的静态结构和动态结 构,包括:用例图(use case diagram).类图(class diagram).时序图(sequence diagr ...
- CEPH-3:cephfs功能详解
ceph集群cephfs使用详解 一个完整的ceph集群,可以提供块存储.文件系统和对象存储. 本节主要介绍文件系统cephfs功能如何灵活的使用,集群背景: [cephadmin@yq01-aip- ...
- char的越界赋值即其原理剖析
思考: int ch = 'A'; int ch1 = 65; int ch2 = 321; printf("%c %c %c\n", ch, ch1, ch2);的输出结果是什么 ...
- 介绍一项让 React 可以与 Vue 抗衡的技术
好吧,我承认我是标题党.React 明明如日中天,把它与 Vue 倒过来,给 Vue 加点东西或可与 React 抗衡.不过,这两年 Vue 干的正是这事,不断加东西,不断优化,按它现有发展速度超越 ...
- Android bluetoothAdapter.startDiscovery()无法搜索设备问题解决办法
Android6.0以上要定位权限,要手动把手机软件的定位权限打开,又被坑了好长时间
- jq移动端图片预览 (fly-zomm-img.js)
效果图: ===>==> 里面还与很多属性设置: index 关闭按钮等等 代码: //html-----------------------<div class="he ...
- 在react项目中使用redux-thunk,react-redux,redux;使用总结
先看是什么,再看怎么用: redux-thunk是一个redux的中间件,用来处理redux中的复杂逻辑,比如异步请求: redux-thunk中间件可以让action创建函数先不返回一个action ...
- 如何基于 ZEGO SDK 实现 Flutter 一对一音视频聊天应用?
之前的文章发布了ZEGO SDK实现Android端音视频通话应用的开发教程,不少开发者反馈很实用,能不能也出一版Flutter的教程. 有求必应,这不小编来了- 我们封装了ZEGO Flutter ...
- servlet和action的区别
1.Servlet:默认在第一次访问时被创建,创建一次,单实例对象 2.Action:访问时被创建,每次访问action的时候,都会创建action对象,创建多次,多实例对象
- Jenkins+gitlab手动部署
环境: Jenkins:172.16.88.221 (安装Jenkins和git命令) gitlab:172.16.88.221 (安装gitlab) 远程部署机器:172.16.88.220 (安装 ...