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 ...
随机推荐
- 并发包下常见的同步工具类(CountDownLatch,CyclicBarrier,Semaphore)
在实际开发中,碰上CPU密集且执行时间非常耗时的任务,通常我们会选择将该任务进行分割,以多线程方式同时执行若干个子任务,等这些子任务都执行完后再将所得的结果进行合并.这正是著名的map-reduce思 ...
- Java 中,Serializable 与 Externalizable 的区别?
Serializable 接口是一个序列化 Java 类的接口,以便于它们可以在网络上传输 或者可以将它们的状态保存在磁盘上,是 JVM 内嵌的默认序列化方式,成本高. 脆弱而且不安全.Externa ...
- 数据分析之Pandas操作
Pandas pandas需要导入 import pandas as pd from pandas import Series,DataFrame import numpy as np 1 Serie ...
- ctfhub web信息泄露备份文件下载(网站源码,back文件)
网站源码 进入环境,首先我们用bp抓一下包 在HTTP请求方式GET/后添加两个负载,一个用于爆破文件名,一个用于爆破后缀名 得知网页源码的备份形式为www.zip,下载网页源码 打开记事本文件 发现 ...
- 推荐一款强大的轻量级模块化WEB前端快速开发框架--UIkit
前言 今天给大家分享一款强大的轻量级模块化WEB前端快速开发框架--UIkit 到目前(2016-06-20)为止,UIkit在github上的Forks已达到了1350个,而Stars更是达到了69 ...
- vue配置请求转发解决跨域问题
通过nodejs的请求转发到后台,前端地址:http://localhost:8080 后端地址:http://localhost:8081 vue.config.js内容如下: let prox ...
- spring框架常见的10个问题
一.找不到配置文件的异常org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML ...
- uni-app中实现图片左滑的效果
template: 1 <view class="my-reg"> 2 <view class="my-regs"> 3 <ima ...
- Python入门-分支循环结构
编写代码的过程中,除了基本的变量,数据类型,在实际开发中,大量代码是根据判断条件,进而选择不同的的向前运行方式. 这些向前的运行方式基本分为两种:分支结构,循环结构 1.分支结构 if单分支结构 # ...
- 关于javaweb学习终点的一些感悟
学习完javaweb后,自己做了一套管理项目,使用了mybatis,themeleaf和servlet.大致明白了servlet的真实应用场景. 说白了servlet就是用来指定浏览器url后面输入了 ...