rlcompleter — 用于 GNU Readline 的补全函数

源代码: Lib/rlcompleter.py


rlcompleter 模块定义的补全函数适于 readline 模块,通过补全有效 Python 标识符和关键词。

When this module is imported on a Unix platform with the readline module available, an instance of the Completer class is automatically created and its 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 module is designed for use with Python’s 交互模式 . Unless Python is run with the -S option, the module is automatically imported and configured (see Readline 配置 ).

On platforms without readline Completer 类 (由本模块定义) 仍可用于自定义目的。

补全器对象

补全器对象具有下列方法:

Completer. complete ( text , state )

返回 state th completion for text .

If called for text that doesn’t include a period character ( '.' ), it will complete from names currently defined in __main__ , builtins and keywords (as defined by the keyword 模块)。

If called for a dotted name, it will try to evaluate anything without obvious side-effects (functions will not be evaluated, but it can generate calls to __getattr__() ) up to the last part, and find matches for the rest via the dir() function. Any exception raised during the evaluation of the expression is caught, silenced and None 被返回。

内容表

上一话题

readline — GNU Readline 接口

下一话题

二进制数据服务

本页