centos7安裝python3 以及tab補全功能
技術標籤:技術
centos7安裝python3 以及tab補全功能
1.安裝python3
1.1下載python原始碼包
網址:https://www.python.org/downloads/release/python-366/
下載地址:https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
編譯安裝python3.6的步驟 1.下載python3原始碼包 2.下載python3編譯的依賴包 3.解壓縮原始碼包 4.進入原始碼包資料夾 5.編譯且安裝 1.進入原始碼包目錄 2. ls檢視原始碼包內容編譯安裝python3.6的步驟3. 釋放編譯檔案 Makefile 4.編譯 5.編譯安裝,此步才會最終生成 /opt/python36/ 6.進入/opt目錄檢視python36資料夾,我們要的python3都在這裡了 6.更改linux的path變數,新增python3 一定要將python3的目錄放在第一位 為了永久生效path設定,新增到/etc/profile全域性環境變數配置檔案中 過載配置檔案/etc/profile 7.安裝django模組 8.檢視當前直譯器的python模組有哪些
1.1.1安裝python前的庫環境,非常重要
yum install -y gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
1.2下載,解壓安裝原始碼包
tar -xvf Python-3.6.6.tgz cd Python-3.6.6 # 進入原始碼包資料夾
1、configure
這一步一般用來生成 Makefile,為下一步的編譯做準備,你可以通過在 configure 後加上引數來對安裝進行控制,比如程式碼:
./configure--prefix=/usr
上面的意思是將該軟體安裝在 /usr 下面,執行檔案就會安裝在 /usr/bin (而不是預設的 /usr/local/bin),資原始檔就會安裝在 /usr/share(而不是預設的/usr/local/share)。
同時一些軟體的配置檔案你可以通過指定 --sys-config= 引數進行設定。有一些軟體還可以加上 --with、--enable、--without、--disable 等等引數對編譯加以控制,你可以通過允許 ./configure --help 察看詳細的說明幫助。
2、make
這一步就是編譯,大多數的原始碼包都經過這一步進行編譯(當然有些perl或python編寫的軟體需要呼叫perl或python來進行編譯)。
如果 在 make 過程中出現 error ,你就要記下錯誤程式碼(注意不僅僅是最後一行),然後你可以向開發者提交 bugreport(一般在 INSTALL 裡有提交地址),或者你的系統少了一些依賴庫等,這些需要自己仔細研究錯誤程式碼。
make 的作用是開始進行原始碼編譯,以及一些功能的提供,這些功能由他的 Makefile 設定檔案提供相關的功能,比如 make install 一般表示進行安裝,make uninstall 是解除安裝,不加引數就是預設的進行原始碼編譯。
make 是Linux開發套件裡面自動化編譯的一個控制程式,他通過藉助 Makefile 裡面編寫的編譯規範進行自動化的呼叫gcc、ld 以及執行某些需要的程式進行編譯的程式。一般情況下,他所使用的 Makefile 控制程式碼,由 configure 這個設定指令碼根據給定的引數和系統環境生成。
3、make install
這條命令來進行安裝(當然有些軟體需要先執行 make check 或 make test來進行一些測試),這一步一般需要你有 root 許可權(因為要向系統寫入檔案)
wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz
xz -d Python-3.6.7.tar.xz
tar -xf Python-3.6.7.tar
#yum install gcc -y
./configure --prefix=/opt/python make && make install
---------------------
用python檢視預設安裝路徑
>>> import sys
>>> sys.path
['', '/usr/local/lib/python36.zip', '/usr/local/lib/python3.6',
'/usr/local/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/site-packages']
--------------------
python3.4預設沒新增path
在/etc/profile最後一行新增
export PATH=$PATH:/opt/python/bin
然後
source /etc/profile
#python快捷path就被改了,yum用的python2,麻煩
# 嘗試安裝django來通過python3直譯器執行它
pip3 install -i https://pypi.douban.com/simple django==1.11.16
# 建立django專案與APP
django-admin startproject mysite
django-admin startapp app01
1.2.3 牛逼的python Tab自動補全
下載setuptool 3.4以上已經預設安裝了easy_install-3.4
下載地址: https://pypi.python.org/pypi/setuptools/36.2.7 下載命令: wget https://pypi.python.org/packages/07/a0/11d3d76df54b9701c0f7bf23ea9b00c61c5e14eb7962bb29aed866a5844e/setuptools-36.2.7.zip#md5=b9e6c049617bac0f9e908a41ab4a29ac 解壓: unzip setuptools-36.2.7.zip 編譯: python3 setup.py build python2 setup.py build 無誤後安裝: python3 setup.py install python2 setup.py install
下載readline
#yum install -y readline-devel -y #pip install readline
tab補全
#python startup file
import readline,rlcompleter
#tab completion
readline.parse_and_bind('tab:complete')
----------------------------
python歷史記錄
#historyfile
import os
history_file=os.path.join(os.environ["HOME"],".pythonhistory")
[[email protected]_local ~]# echo "export PYTHONSTARTUP='/root/.pythonstartup'" >> /root/.bashrc [[email protected]_local ~]# source /root/.bashrc [[email protected]_local ~]# cat /root/.pythonstartup import os import readline import rlcompleter import atexit #tab completion readline.parse_and_bind("tab: complete") #history file history_file = os.path.join(os.environ["HOME"],".pythonhistory") try: readline.read_history_file(history_file) except IOError: pass atexit.register(readline.write_history_file,history_file) del os,history_file,readline,rlcompleter [[email protected]_local ~]# python Python 2.7.3 (default, Jun 5 2013, 22:40:26) [GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.path<tab> #按tab鍵就可以自動補全了 [[email protected]_local ~]# python >>> >>> sys.path #按上下方向鍵即可找到歷史命令整體程式碼
加入python的啟動環境變數,永久生效自動補全
只需要啟動時執行一條命令即可 import rlcompleter, readline readline.parse_and_bind('tab:complete') 可以將上述的程式碼存於~/.pythonrc.py檔案中。 然後,在~/.bashrc中設定 export PYTHONSTARTUP=~/.pythonrc.py 這樣,每次啟動終端,bash就會設定PYTHONSTARTUP這個環境變數,然後,python啟動時就會使用這個變數指定的檔案中的初始化程式碼。 在python直譯器中,輸入一個變數的一部分,或者變數後面加句點,再按TAB鍵就可以看到自動補全的威力。