Python 在 GNU readline 中的補全函式


Unix readline 模組具有製表符補全機制。要獲得這些特性,我們必須使用 rlcompleter 模組。它可以在 Python 的互動模式下使用。

要使用此模組,我們應該使用以下方法匯入它 −

import rlcompleter

有一個類稱為 Completer 類 −

方法 Completer.complete(text, state)

此方法用於返回標籤補全輸出。如果文字中有‘.’,則它會嘗試獲取該命令的所有相關成員。如果沒有句點‘。’,它將完成文字。

示例程式碼

import rlcompleter
import sys
my_completer = rlcompleter.Completer()
phrase_list = ['co', 'sys.m', 'cal']
for phrase in phrase_list:
   print(phrase + ' (TAB): ', end='')
   try:
      for i in range(50):
         terms = my_completer.complete(phrase, i)
         if terms is None:
            break
            print(terms, end='\t')
    except:
       pass
    print()

輸出

$ python3 example.py
co (TAB): continue    compile(    complex(    copyright(    
sys.m (TAB): sys.maxsize    sys.maxunicode    sys.meta_path    sys.modules    
cal (TAB): callable(

更新時間: 30-7-2019

303 次瀏覽

開啟您的職業

完成本課程以獲得認證

開始
廣告