yum -y install wget gcc make libffi-devel zlib-devel readline-devel bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
html
說明:python
yum install wget gcc make readline-devel # 解決 import bz2 報錯 yum install bzip2-devel # 解決 import curses 報錯 yum install ncurses-devel # 解決 import sqlite3 報錯 yum install sqlite-devel # 解決 _dbm _gdbm 缺失提醒 yum install gdbm-devel # 解決 _lzma 缺失提醒 yum install xz-devel # 解決 _tkinter 缺失提醒 yum install tk-devel # 解決 readline 缺失提醒及方向鍵行爲非預期的問題 yum install readline-devel yum install zlib-devel # 解決ImportError: No module named '_ctypes' 錯誤 yum install libffi-devel
在Python官網下載sql
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz # 下載 xz -d Python-3.7.1.tar.xz tar -xvf Python-3.7.1.tar # 解壓縮
cd Python-3.7.1 ./configure --prefix=/usr/local/python3.7 --enable-optimizations
--prefix
指定了預期安裝目錄 --enable-optimizations
優化選項bootstrap
生成了Makefile
文件,這個過程不會自動建立/usr/local/python3.7
目錄。vim
# 依然在Python-3.7.1目錄下 make -j8
make install
/usr/local/python3.7
目錄被建立了,執行安裝。centos
ln -s /usr/local/python3.7/bin/python3 /usr/bin/python3 ln -s /usr/local/python3.7/bin/pip3 /usr/bin/pip3
若是養成好的習慣,使用了--prefix
參數,那麼僅須要刪除對應文件夾,去除相關環境變量便可。不然須要進入源碼的src
文件夾下,執行make uninstall
。curl
安裝好以後,輸入python3
便可使用,pip3
也能夠使用。發現機器自己自帶的python2
對應的pip
沒法使用,因而從新安裝一下pip
:優化
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py