linux下python的自动完成
时间:2010-05-29 来源:pkuwwt
linux的命令行中打开python,进入python交互模式,当你想输入某个函数的名称,但又记不得完整的名称的时候,你会自然地按一下tab键(受bash的bash-completion的"毒害"至深了吧),但有时候你会非常失望。
其实, python中是有支持自动完成的模块的,因为它支持readline!!! 不信请看http://docs.python.org/library/rlcompleter.html
我把命令摘出来,权当备份。
使用linux习惯了的你当然不会甘心每次启动都老老实实地敲这三行代码,你可以将它们写到~/.pythonrc.py中去,为什么是这个文件?其实我是在man python中看到的。
可惜的是~/.pythonrc.py只能被user模块所用,也就是说为了实现自动完成,你每次还得import user。并且,这个效果并不是太好,只能自动完成一些最保守的关键字。此路不通。
那么你还可以在.bashrc中加入这样一句话
为什么是PYTHONSTARTUP,这也是从man python里找到的,意思是启动时python从这个文件中读取命令并执行。这种做法效果最好,而且也不在乎你用什么文件名。
其实, python中是有支持自动完成的模块的,因为它支持readline!!! 不信请看http://docs.python.org/library/rlcompleter.html
我把命令摘出来,权当备份。
import rlcompleter |
使用linux习惯了的你当然不会甘心每次启动都老老实实地敲这三行代码,你可以将它们写到~/.pythonrc.py中去,为什么是这个文件?其实我是在man python中看到的。
可惜的是~/.pythonrc.py只能被user模块所用,也就是说为了实现自动完成,你每次还得import user。并且,这个效果并不是太好,只能自动完成一些最保守的关键字。此路不通。
那么你还可以在.bashrc中加入这样一句话
export PYTHONSTARTUP=~/.pythonrc.py |
为什么是PYTHONSTARTUP,这也是从man python里找到的,意思是启动时python从这个文件中读取命令并执行。这种做法效果最好,而且也不在乎你用什么文件名。
相关阅读 更多 +