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的記錄(目前最新版本),供大家參考:
- 下載Python3.7安裝包
[root@wt-test-3 software]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
-
解壓下載後的安裝包,並編譯安裝
[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]()
- 如果安裝過程中出現:
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
- 安裝完成後,設置環境變量
[root@wt-test-2 software]# echo 'export PATH=$PATH:/opt/python37/bin' >> /etc/profile [root@wt-test-2 software]# source /etc/profile
- 驗證是否安裝成功
[root@wt-test-2 software]# python3 --version Python 3.7.0