首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

rlcompleter

rlcompleter模块readline通过完成有效的Python标识符和关键字来定义适合该模块的完成功能。

当该模块在具有readline可用模块的Unix平台上导入时,Completer会自动创建该类的一个实例,并将其complete()方法设置为readline完成者。

例:

代码语言:javascript
复制
>>> 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的交互模式。用户可以将以下行添加到他或她的初始化文件(由PYTHONSTARTUP环境变量标识)以自动Tab完成:

代码语言:javascript
复制
try:
    import readline
except ImportError:
    print "Module readline not available."
else:
    import rlcompleter
    readline.parse_and_bind("tab: complete")

在没有的平台上readlineCompleter此模块定义的类仍可用于自定义目的。

1.完成对象

Completer对象具有以下方法:

Completer.complete(text, state)

返回_textstate_th完成

如果要求的文本不包括一段字符('.'),它将完成从当前定义的名称__main____builtin__(由定义和关键字keyword模块)。

如果调用一个虚线名称,它将尝试评估任何没有明显副作用(函数不会被评估,但可以生成调用__getattr__())的东西,直到最后一部分,并通过该dir()函数查找其余部分的匹配。表达式评估过程中发生的任何异常都会被捕获,静音并None返回。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com