rlcompleter — GNU readlineの完了関数—Pythonドキュメント
rlcompleter —GNUreadlineの完了関数
ソースコード: :source: `Lib / rlcompleter.py`
rlcompleter モジュールは、有効なPython識別子とキーワードを補完することにより、 readline モジュールに適した補完関数を定義します。
このモジュールが readline モジュールが使用可能なUnixプラットフォームにインポートされると、Completer
クラスのインスタンスが自動的に作成され、そのcomplete()
メソッドがとして設定されます。 ] readline コンプリーター。
例:
>>> import rlcompleter
>>> import readline
>>> readline.parse_and_bind("tab: complete")
>>> readline. <TAB PRESSED>
readline.__doc__ readline.get_line_buffer( readline.read_init_file(
readline.__file__ readline.insert_text( readline.set_completer(
readline.__name__ readline.parse_and_bind(
>>> readline.
rlcompleter モジュールは、Pythonのインタラクティブモードで使用するように設計されています。 Pythonが -S オプションで実行されていない限り、モジュールは自動的にインポートされて構成されます( Readline構成を参照)。
readline のないプラットフォームでも、このモジュールで定義されているCompleter
クラスをカスタム目的で使用できます。
コンプリーターオブジェクト
コンプリーターオブジェクトには、次のメソッドがあります。
- Completer.complete(text, state)
text の state 番目の完了を返します。
ピリオド文字を含まないテキスト(
'.'
)が呼び出された場合、 __ main __ 、 builtins で現在定義されている名前から補完されます。およびキーワード(キーワードモジュールで定義されているとおり)。点線の名前が必要な場合は、明らかな副作用なしに(関数は評価されませんが、
__getattr__()
への呼び出しを生成できます)、最後の部分まで評価を試み、残りの部分に一致するものを見つけます。 dir()関数を介して。 式の評価中に発生した例外はすべてキャッチされ、サイレンシングされ、 None が返されます。