bpython
是替代交互式Python解釋器的衆多選擇之一,它提供了您提到的兩個功能(選項卡完成和持續讀取歷史記錄)。
另一個非常常用的一個將被IPython,雖然我個人並不很喜歡它(只是個人喜好,很多人都非常喜歡它)。
最後但並非最不重要,你也可以啓用標準Python解釋這些功能:
包含這個腳本你的home目錄創建一個文件~/.pythonrc
:
try:
import readline
except ImportError:
print "Module readline not available."
else:
import rlcompleter
readline.parse_and_bind("tab: complete")
這將嘗試導入的ReadLine模塊,其默認完成函數綁定到TAB鍵。爲了在每次啓動Python解釋器時執行此腳本,請將環境變量PYTHONSTARTUP
設置爲包含此腳本的路徑。你如何做到這一點取決於你的操作系統 - 在Linux上,你可以做你的~/.bashrc
例如:
export PYTHONSTARTUP="/home/lukas/.pythonrc"
(該文件不需要被稱爲.pythonrc
,甚至是在你的主目錄 - 所有重要的是,它是你在PYTHONSTARTUP
設置相同的路徑)
他的腳本已經包含tab完成部分。因此,既然你想要兩個,你可以將他的腳本保存到~/.python
,並將他的bashrc.python
的內容添加到你的~/.bashrc
。
我的確在之前嘗試過IPython,但並不喜歡每個命令所佔用的大空間。然而,我剛剛下載了bpython,並立即墜入愛河。太感謝了! – kramer65
是的,'bpython'不太知名,但有一噸的迷人:) –
此外,如果你有興趣,請參閱[本視頻](http://pyvideo.org/video/1568/console-applications- with-urwid)來演示它的一些功能。 (bpython的東西從00:30左右開始)。 –