使用Bash一段时间后,你会在需要输入命令的地方,习惯性的按Tab补齐,毫无疑问Tab补齐是一个相当棒的功能,强大的Python当然也支持,只不过你需要一点点hack。
首先检查一下你的Python是否安装了readline与rlcompleter这两个module。如果你用的发行版不是特别陈旧,那默认的Python安装都会包含。
现在打开Python,导入这两个module,然后激活Tab补齐,你就可以使用它了。
>>> import readline >>> import rlcompleter >>> readline.parse_and_bind('tab: complete') >>> readline.__ readline.__class__ readline.__name__ readline.__delattr__ readline.__new__ readline.__dict__ readline.__reduce__ readline.__doc__ readline.__reduce_ex__ readline.__file__ readline.__repr__ readline.__getattribute__ readline.__setattr__ readline.__hash__ readline.__str__ readline.__init__
如果你希望每次打开Python都能自动激活Tab补齐,只需把它加到Python的启动脚本里。
如果你还没有定制自己的Python启动脚本,现在就建立一个吧,然后把它加到bash的初始化脚本(~/.bashrc)里:
export PYTHONSTARTUP=~/.pythonrc.py
下面是.pythonrc.py的内容
1 | try : |
2 | import readline |
3 | except ImportError: |
4 | print ( "Module readline not available." ) |
5 | else : |
6 | import rlcompleter |
7 | readline.parse_and_bind( "tab: complete" ) |
在Linux下,这个功能Python2和3都支持。关于readline与rlcompleter这两个module的详细信息,可以查看Python的手册。