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(
廣告