Linux系统安装Python3环境(超详细)

Linux系统安装Python3环境(超详细)本文基于如下Linux系统版本:1、默认情况下,Linux会自带安装Python,可以运行python–version命令查看,如图:我们看到Linux中已经自带了Python2.7.5。再次运行python命令后就可以使用python命令窗口了(Ctrl+D退出python命令窗口)。2、查看Linux默认安装的Python位置看到/usr/bin/python…

大家好,又见面了,我是你们的朋友全栈君。

本文基于如下Linux系统版本:

Linux系统安装Python3环境(超详细)

1、默认情况下,Linux会自带安装Python,可以运行python –version命令查看,如图:Linux系统安装Python3环境(超详细)

我们看到Linux中已经自带了Python2.7.5。再次运行python命令后就可以使用python命令窗口了(Ctrl+D退出python命令窗口)。

 

2、查看Linux默认安装的Python位置

Linux系统安装Python3环境(超详细)

看到/usr/bin/python和/usr/bin/python2都是软链接,/usr/bin/python指向/usr/bin/python2,而/usr/bin/python2最终又指向/usr/bin/python2.7。所以运行python/python2/python2.7是一样的,如图:

Linux系统安装Python3环境(超详细)

3、安装python3

(1)登录https://www.python.org/downloads/source/,找到对应版本(我们以Python 3.6.5为例)如图:

Linux系统安装Python3环境(超详细)

下载Python-3.6.5.tgz

(2)文件上传

将文件上传到Linux系统的某个目录下,根据自己情况上传,本例上传到了/root/tools目录下,如图:

Linux系统安装Python3环境(超详细)

(3)解压

执行tar -zxvf Python-3.6.5.tgz命令,将文件解压到当前目录,如图:

Linux系统安装Python3环境(超详细)

(4)准备编译环境

执行如下命令:

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

安装python需要的依赖。成功后(Complete!),如图:

Linux系统安装Python3环境(超详细)

如果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的安装目录,安装成功后,如图:

 Linux系统安装Python3环境(超详细)

我们看到,同时安装了setuptools和pip工具。进入到/root/training/Python-3.6.5安装目录,如图:

Linux系统安装Python3环境(超详细)

(6)创建软链接

还记得开始,Linux已经安装了python2.7.5,这里我们不能将它删除,如果删除,系统可能会出现问题。我们只需要按照与Python2.7.5相同的方式为Python3.6.5创建一个软链接即可,我们把软链接放到/usr/local/bin目录下,如图:

Linux系统安装Python3环境(超详细)

 此时,我们在命令窗口运行python3,如图:

Linux系统安装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命令,查看是否配置成功,如图:

Linux系统安装Python3环境(超详细)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/140941.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Spring Cloud版本说明

    Spring Cloud版本说明SpringCloud是一个由众多独立子项目组成的大型综合项目,每个子项目有不同的发行节奏,都维护着自己的发布版本号。SpringCloud通过一个资源清单BOM(BillofMaterials)来管理每个版本的子项目清单。为避免与子项目的发布号混淆,所以没有采用版本号的方式,而是通过命名的方式。这些版本名称的命名方式采用了伦敦地铁站的名称,同时根据字母表的顺序来对应版本时间顺序,比如…

  • stm32的unique ID全球唯一码[通俗易懂]

    stm32的unique ID全球唯一码[通俗易懂]我经常把STM32的全球唯一码作为网卡的MAC地址,但有一天我发现我发现,我的2个板子的MAC地址一样,造成只能有一个ping通。我查看这2个板子的单片机的UNIQUEID,发现非常接近。uniqueid只有前4个字节不一样,而我用的MAC地址是uniqueid的后6个字节,这就造成生成的MAC地址一模一样,可能是这2个片子是同一批买的,同一批生产的,ID号…

    2022年10月29日
  • 一致性Hash算法以及java实现「建议收藏」

    一致性Hash算法以及java实现「建议收藏」目前我们很多时候都是在做分布式系统,但是我们需把客户端的请求均匀的分布到N个服务器中,一般我们可以考虑通过Object的HashCodeHash%N,通过取余,将客户端的请求分布到不同的的服务端。但是在分布式集群中我们通常需要添加或删除服务器,所以通过取余是不行的。一致性Hash就是为了解决这个问题。  ConsistentHashing一致性Hash的原理  1、环型Hash空间…

  • webservice中文乱码处理_java取session乱码问题

    webservice中文乱码处理_java取session乱码问题javawebservice部分中文乱码解决,注意是部分乱码,不是全部哦!!!

  • 微信开放平台 微信登录-扫码登录[通俗易懂]

    微信开放平台 微信登录-扫码登录[通俗易懂]需求:后台需要添加微信扫码登录,要求能跟小程序用户绑定,同步用户信息。

  • 很好的理解遗传算法的样例

    很好的理解遗传算法的样例

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号