本文實例講述了Python實現(xiàn)Tab自動補全和歷史命令管理的方法。分享給大家供大家參考。具體分析如下:
Python的startup文件,即環(huán)境變量 PYTHONSTARTUP 對應(yīng)的文件
1. 為readline添加tab鍵自動補全的功能
2. 像Shell一樣管理歷史命令
代碼如下:
代碼如下:import rlcompleter
import readline
import atexit
import os
# http://stackoverflow.com/questions/7116038/python-tab-completion-mac-osx-10-7-lion
if 'libedit' in readline.__doc__:
readline.parse_and_bind('bind ^I rl_complete')
else:
readline.parse_and_bind('tab: complete')
histfile = os.path.join(os.environ['HOME'], '.pyhist')
try:
readline.read_history_file(histfile)
except IOError:
pass
atexit.register(readline.write_history_file, histfile)
del readline, rlcompleter, histfile, os
希望本文所述對大家的Python程序設(shè)計有所幫助。
一。這個方法可以修改shell命令行的自動補全
1.獲取python目錄【我使用的是64位ubuntu系統(tǒng)】
[~$]pythonPython 2.7.3 (default, Apr 10 2013, 06:20:15) [GCC 4.6.3] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import sys>>> sys.path['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0','/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', '/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', '/usr/lib/python2.7/dist-packages/ubuntuone-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']>>>
從上面看出python在我電腦上的路徑是 /usr/lib/python2.7
2.切換至該目錄寫個startup.py的腳本,腳本目錄就是處理python中<tab>事件,腳本內(nèi)容如下
#!/usr/bin/python # python startup file import sys import readline import rlcompleter import atexit import os # tab completion readline.parse_and_bind('tab: complete') # history file histfile = os.path.join(os.environ['HOME'], '.pythonhistory') try: readline.read_history_file(histfile) except IOError: pass atexit.register(readline.write_history_file, histfile) del os, histfile, readline, rlcompleter3.切換至自己主目錄
代碼如下:
[/usr/lib/python2.7$]cd
[~$]vi .bashrc
4. 增加環(huán)境變量
代碼如下:
#for python
export PYTHONSTARTUP=/usr/lib/python2.7/startup.py
新聞熱點
疑難解答
圖片精選