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环境(超详细)

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 激光slam综述_SLAM是什么

    激光slam综述_SLAM是什么什么是slam技术 slam(SimultaneousLocalizationandMapping)叫即时定位与建图,它主要的作用是让机器人在未知的环境中,完成定位(Localization),建图(Mapping)和路径规划(Navigation)。激光slam简要介绍  主流的slam技术应用有两种,分别是激光slam(基于激光雷达lidar来建图导航)和视觉sla…

    2022年8月23日
    7
  • java字符串类型转换为int_java中double转int类型

    java字符串类型转换为int_java中double转int类型标题Java类型转换:int转double由于double的范围比int数据类型大,所以当int值被赋给double时,java会自动将int值转换为double。隐式转换:由于double数据类型的范围和内存大小都比int大,因此从int到double的转换是隐式的。并不需要像doubletoint转换那样进行类型转换;使用Double.valueOf()方法/***Ja…

    2022年4月20日
    76
  • IDEA的优化配置

    IDEA的优化配置前言IDEA全称IntelliJIDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、创新的GUI设计等方面的功能可以说是超常的。idea的优化可以使我们更得心应手的高效开发设置优化方法分割线一个文件可能会有一个或多个方法,堆积在一起使人眼花缭乱。方法分割线可以是我们快速区分方法。File——Setting——Edi

    2022年5月21日
    49
  • SpringCloud系列之客户端负载均衡Netflix Ribbon

    SpringCloud系列之客户端负载均衡Netflix Ribbon

    2020年11月19日
    181
  • mybatis log plugin2022激活码【2022.01最新】2022.02.21[通俗易懂]

    (mybatis log plugin2022激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlHC…

    2022年4月1日
    256
  • 2015/8/26 Python基础(1):基本规则及赋值「建议收藏」

    2015/8/26 Python基础(1):基本规则及赋值「建议收藏」Python有如下的基本规则:#后表示注释\n是行分隔符\是继续上一行,将过长语句分开;分号将两个语句连接在一行中:冒号将代码头和体分开代码块用缩进块的方式体现不同缩进深度分隔不同的代码

    2022年7月6日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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