改进了IDE'ish Python命令行,包括代码完成?

时间:2014-02-09 13:20:14

标签: python command-line ide pycharm interactive

为了编写Python,我目前使用优秀的PyCharm IDE。我喜欢它完成代码的方式,所以你通常只需输入前2个字母,然后点击回车。

为了便于测试,我当然也常常在命令行上。唯一的问题是我在命令行上错过了IDE的便捷功能。为什么命令行上没有代码完成?当我启动一个新的Python交互式解释器时,为什么它不记得我之前插入的命令(比如sqlite3那样)?

所以我四处寻找,但我找不到类似的东西,或者我只是不寻找合适的词语。

所以我的问题;有没有人知道Python交互式命令行解释器的改进和更方便的版本?欢迎所有提示!

1 个答案:

答案 0 :(得分:4)

bpython是备选交互式Python解释器的众多选择之一,它具有您提到的两个功能(制表符完成和持久性读取历史记录)。

bpython screenshot

另一个非常常用的是IPython,虽然我个人不喜欢它(只是个人喜好,很多人都非常喜欢它)。

最后但并非最不重要的是,您还可以为标准Python解释器启用这些功能:

在包含此脚本的主目录中创建文件~/.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中设置的路径相同

  • 持久性历史记录:请参阅.pythonrc的点文件中的Marius Gedminas文件。这个概念与上面相同:您添加保存并将历史记录加载到~/.pythonrc的代码,并配置PYTHONSTARTUP环境变量以包含该脚本的路径,因此每次都会执行你启动了一个Python解释器。

他的脚本已包含标签完成部分。因此,既然您想要两者,您可以将名为python的脚本保存到~/.python,并将bashrc.python的内容添加到~/.bashrc