Python版本选择
admin
2023-07-21 06:22:06
0
Python版本选择
  • Python2.x是遗产,Python3.x是现在和未来的语言。
  • Python2.x默认编码为ASSIC码,不支持中文。
  • Python3.x默认编码为UNICODE,默认支持中文。
    Python3对比Python2
  • 默认支持中文。
  • 不兼容Python2.x。
  • 核心语法调整,更易学习。
  • 新特性默认只在Python3.x上有。
安装

本安装以CentOS7为例

[root@wt-test-3 python]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

CentOS7中默认安装的是Python2.7.5版本,YUM源中提供的也是Python2.7.5版本,可以通过以下命令查看:

[root@wt-test-3 python]# python --version
Python 2.7.5
[root@wt-test-3 python]# yum info python
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.bit.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirror.bit.edu.cn
Installed Packages
Name        : python
Arch        : x86_64
Version     : 2.7.5
Release     : 68.el7
Size        : 79 k
Repo        : installed
Summary     : An interpreted, interactive, object-oriented programming language
URL         : http://www.python.org/
License     : Python

想要使用Python3.x版本,需要我们手动安装,以下是我编译安装Python3.7的记录(目前最新版本),供大家参考:

  1. 下载Python3.7安装包
    [root@wt-test-3 software]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
  2. 解压下载后的安装包,并编译安装

    [root@wt-test-2 software]# tar zxf Python-3.7.0.tgz
    [root@wt-test-2 software]# cd Python-3.7.0
    [root@wt-test-2 software]# ./configure --prefix=/opt/python37 --enable-optimizations
    [root@wt-test-2 software]# make -j 4
    [root@wt-test-2 software]# make install

    --enable-optimizations 选项启用PGO(Profile-Guided Optimizations,档案导引优化)和LTO(Link-Time and optimized)优化,性能提升约10%-20%,但会增加编译时间。PGO、LTO的详细信息可参考 [https://gcc.gnu.org/onlinedocs/gccint/LTO-Overview.html]()

  3. 如果安装过程中出现:
    Python build finished successfully!
    The necessary bits to build these optional modules were not found:
    _bz2                  _curses               _curses_panel      
    _dbm                  _gdbm                 _hashlib           
    _lzma                 _sqlite3              _ssl               
    _tkinter              _uuid                 readline      

    可以安装缺少的依赖包,然后删除编译目录重新执行编译安装步骤。

    [root@wt-test-2 software]# yum -y install gcc-c++ openssl-devel \
                           zlib-devel libffi-devel readline-devel  \
                           bzip2-devel ncurses-devel sqlite-devel \
                           gdbm-devel xz-devel tk-devel libuuid-devel 
  4. 安装完成后,设置环境变量
    [root@wt-test-2 software]# echo 'export PATH=$PATH:/opt/python37/bin' >> /etc/profile
    [root@wt-test-2 software]# source /etc/profile
  5. 验证是否安装成功
    [root@wt-test-2 software]# python3 --version
    Python 3.7.0

相关内容

热门资讯

伊朗谈判代表团已抵达瑞士,专机... 当地时间6月20日晚,伊朗谈判代表团抵达瑞士苏黎世,准备与美国在比尔根山进行会谈。据伊朗媒体报道,代...
美财长被曝曾对泽连斯基爆粗口,... 由《纽约时报》记者玛吉·哈伯曼和乔纳森·斯旺撰写的《政权更迭》一书爆料,美国财政部长贝森特曾建议特朗...
美国芝加哥发生枪击事件,至少1... △芝加哥市19日晚发生枪击事件的现场据当地警方20日发布的消息,美国芝加哥市19日晚发生一起枪击事件...
意大利总理回击特朗普批评:应关... △意大利总理梅洛尼(资料图)意大利总理梅洛尼20日就美国总统特朗普针对其政府的最新批评作出回应,称特...
以总理及防长被曝已命令以军在黎... 据以色列方面20日消息,以色列总理内塔尼亚胡和国防部长卡茨已下达指令,要求以军在黎巴嫩停火。根据该指...
梁文杰称台湾人几乎不吃凤梨释迦... 海峡导报综合报道 台陆委会副主委梁文杰18日称凤梨释迦“台湾人几乎不吃,是仰大陆鼻息的农产品”,引起...
伊朗谈判代表已启程前往瑞士 据伊朗方面20日消息,伊朗谈判代表已启程前往瑞士,就谅解备忘录与美方进行讨论。6月20日,巴基斯坦外...
美军称暂未观察到伊朗关闭霍尔木... 新华社华盛顿6月20日电 据美国媒体20日援引美国高级官员的话报道称,美军暂未观察到伊朗关闭霍尔木兹...
万亿市场,“爆发前夜” 就在SpaceX6月12日完成纳斯达克首秀前,创始人埃隆·马斯克在一场访谈上确认,SpaceX正在开...
乌俄互指对方在赫尔松州发动袭击 乌克兰赫尔松州军事管理局20日在社交媒体发文称,截至当天早上6时,赫尔松州乌控区在过去24小时内遭俄...