Python 本身的 Interactive Mode (Shell) 其實對於測試一些小功能和 debug,都蠻有用的,不過它的功能一直讓我覺得很陽春,尤其是 Tab Completion,我一直以為沒有實作這個功能,後來在 “Python for Unix and Linux System Administration” 這本書看到原來可以手動打開這個功能:
>>> import rlcompleter, readline
>>> readline.parse_and_bind('tab: complete')
這樣便可以使用 Tab Completion 的功能了,結果大致上會是:
>>> import os >>> os.lis<TAB> >>> os.listdir >>> os.li<TAB><TAB> os.linesep os.link os.listdir
雖然有了基本的 Tab Completion 功能,但說真的,還是挺不習慣 Python 原本的 Shell,後來都改用 IPython 了,比原本的 Python Shell 強大很多,重點是…它會自動 Indent,我不用再按<TAB>按到死了。
按你的方法做了,可是为啥提示没有readline模块呢?
我Windows下的python2.5.4
>>> import rlcompleter, readline
Traceback (most recent call last):
File “”, line 1, in
ImportError: No module named readline
推 ipython,用過後,就不會想回去用預設的 shell 了 XD