python tab補全模塊

python tab補全模塊

安裝readline模塊

[root@zabbix-server ~]# pip install readline

編寫補全模塊內(nèi)容

查看模塊內(nèi)容:
版本一
[root@zabbix-server ~]# cat tab.py

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# __created by junxi__

# The script is used by python tab Completion script
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')        # linux下使用這行內(nèi)容
# histfile = os.path.join(os.environ['HOMEPATH'], '.pythonhistory')   # win10下使用這行內(nèi)容
try:
    readline.read_history_file(histfile)
except IOError:
    pass
# atexit.register(readline.write_history_file, histfile)
# del histfile

版本二
[root@zabbix-server ~]# cat tab.py

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# __created by junxi__

# The script is used by python tab Completion script

import readline,rlcompleter

### Indenting
class TabCompleter(rlcompleter.Completer):
    """Completer that supports indenting"""
    def complete(self, text, state):
        if not text:
            return ('    ', None)[state]
        else:
            return rlcompleter.Completer.complete(self, text, state)

readline.set_completer(TabCompleter().complete)

### Add autocompletion
if 'libedit' in readline.__doc__:
    readline.parse_and_bind("bind -e")
    readline.parse_and_bind("bind '\t' rl_complete")
else:
    readline.parse_and_bind("tab: complete")

### Add history
import os
histfile = os.path.join(os.environ["HOME"], ".pyhist")
try:
    readline.read_history_file(histfile)
except IOError:
    pass
import atexit
atexit.register(readline.write_history_file, histfile)
del histfile

查看python默認可以查找到的包目錄(就是默認可以import 模塊的路徑)

[root@zabbix-server ~]# python
Python 2.7.5 (default, Nov  6 2016, 00:28:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/usr/lib/python2.7/site-packages/pip-9.0.1-py2.7.egg', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib64/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages']

把tab.py移動到sys.path查看的目錄中的一個即可

[root@zabbix-server ~]# mv tab.py /usr/lib/python2.7/site-packages

測試結(jié)果(使用tab補全每次都要先導(dǎo)入tab.py補全模塊)

[root@zabbix-server ~]# python
Python 2.7.5 (default, Nov  6 2016, 00:28:07) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tab
>>> import os
>>> os.
Display all 249 possibilities? (y or n)
os.EX_CANTCREAT             os.__package__              os.listdir(
os.EX_CONFIG                os.__reduce__(              os.lseek(
os.EX_DATAERR               os.__reduce_ex__(           os.lstat(
os.EX_IOERR                 os.__repr__(                os.major(
os.EX_NOHOST                os.__setattr__(             os.makedev(
os.EX_NOINPUT               os.__sizeof__(              os.makedirs(
os.EX_NOPERM                os.__str__(                 os.minor(

ok

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市忠荞,隨后出現(xiàn)的幾起案子桩引,更是在濱河造成了極大的恐慌凳寺,老刑警劉巖洞拨,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異杯矩,居然都是意外死亡沽损,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進店門猛计,熙熙樓的掌柜王于貴愁眉苦臉地迎上來唠摹,“玉大人,你說我怎么就攤上這事奉瘤」蠢” “怎么了?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵盗温,是天一觀的道長藕赞。 經(jīng)常有香客問我,道長卖局,這世上最難降的妖魔是什么斧蜕? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮砚偶,結(jié)果婚禮上批销,老公的妹妹穿的比我還像新娘。我一直安慰自己染坯,他們只是感情好均芽,可當我...
    茶點故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著单鹿,像睡著了一般掀宋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天劲妙,我揣著相機與錄音湃鹊,去河邊找鬼。 笑死是趴,一個胖子當著我的面吹牛涛舍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播唆途,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼富雅,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了肛搬?” 一聲冷哼從身側(cè)響起没佑,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎温赔,沒想到半個月后蛤奢,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡陶贼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年啤贩,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拜秧。...
    茶點故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡痹屹,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出枉氮,到底是詐尸還是另有隱情志衍,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布聊替,位于F島的核電站楼肪,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏惹悄。R本人自食惡果不足惜春叫,卻給世界環(huán)境...
    茶點故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望泣港。 院中可真熱鬧象缀,春花似錦、人聲如沸爷速。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惫东。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間廉沮,已是汗流浹背颓遏。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留滞时,地道東北人叁幢。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像坪稽,于是被迫代替她去往敵國和親曼玩。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 一窒百、查看Python安裝路徑 [root@controller ~]# pythonPython 2.7.5 (d...
    指間_流年閱讀 434評論 0 0
  • 本節(jié)內(nèi)容 Python介紹 發(fā)展史 Python 2 or 3? 安裝 Hello World程序 變量 用戶輸入...
    小小不懂11閱讀 3,411評論 2 30
  • 前言 Python的創(chuàng)始人為Guido van Rossum黍判。1989年圣誕節(jié)期間,在阿姆斯特丹篙梢,Guido為了打...
    依依玖玥閱讀 3,565評論 6 37
  • Python 二三事 面向初學(xué)者介紹Python相關(guān)的一些工具顷帖,以及可能遇到的常見問題。 最后更新 2013.5....
    hzyido閱讀 67,746評論 2 42
  • (這是很早之前寫的但內(nèi)容沒有太過時渤滞,發(fā)到這邊補全一下...)面向初學(xué)者介紹Python相關(guān)的一些工具贬墩,以及可能遇到...
    jagttt閱讀 67,267評論 3 44