Windows下Python的Tab补全

7 投票
3 回答
8797 浏览
提问于 2025-04-15 12:40

我正在用Python写一个跨平台的命令行程序,想要添加自定义的自动补全功能。在Unix系统上,我可以使用内置的readline模块,像下面这样写代码,当我按下TAB键时,可以指定一个可能的补全列表:

import readline
readline.parse_and_bind( 'tab: complete' )
readline.set_completer( ... )

那么在Windows上我该怎么做呢?我希望尽量不依赖第三方的包。如果没有现成的解决方案,能不能简单地捕捉到TAB键的按下事件,这样我就可以从头开始自己实现这个功能?

3 个回答

0

另一个可以了解的选择是 readline.py

0

你可以看看 ipython 是怎么用 pyreadline 来实现的,也许会对你有帮助。

2

你有没有看看这个链接:PyReadline:一个基于ctypes的Windows版readline? 虽然你不想用第三方的包,但也许这对自己动手做一些东西会有帮助,对吧:).

撰写回答