是否有相当于Python的'intellisense'?
也许我不应该承认这一点,但我发现intellisense真正加速了学习新语言的"发现阶段".例如,从VB.net切换到C#是轻而易举的,因为片段和intellisense帮助我.
这篇博客文章解释了如何将Vim设置为Python IDE,他涵盖了类似Intellisense的功能:
Python Intellsense http://blog.dispatched.ch/wp-content/uploads/2009/05/omnicompletion.png
这是标准的Vim中7有许多在Vim中为Python开发其他非常有用的插件,如Pyflakes其上飞检查代码和Python_fn.vim其用于操纵蟒缩进&码块提供的功能.
看看Visual Studio的python工具,他们提供代码完成(又称intellisense),调试等...
下面是python交互式shell的屏幕截图,显示了代码完成情况.
Eclipse 的PyDev环境具有类似Intellisense的Python功能.保持交互式控制台打开,以及该help(item)
功能是非常有帮助的.
语言的动态性质倾向于使自动完成类型分析变得困难,因此上面提到的各种完成设施的质量变化很大.
虽然它不是你要求的,但ipython shell非常适合探索性工作.当我使用新模块时,我倾向于将其拉入ipython并捅它.尝试了上面提到的大部分解决方案(虽然距离Wing已有多年),但ipython的完成设施始终更加可靠.探索的两个主要工具是标签完成,并在模块/函数名称后附加一个问号以获取帮助文本,例如:
In [1]: import sqlalchemy In [2]: sqlalchemy.s #tab completion sqlalchemy.schema sqlalchemy.select sqlalchemy.sql sqlalchemy.subquery In [2]: sqlalchemy.select? #Shows docstring In [3]: sqlalchemy.select?? #Shows method source In [4]: edit sqlalchemy.select #opens the source in an editor
我强烈推荐PyDev.在Pydev中,您可以将您正在使用的模块放在强制构建中,大多数代码完成将比其他IDE(如KOMODO EDIT)更好地工作.
我认为IPython非常有帮助.由于它是IPython中的"运行时",因此IPython中的代码完成不会遗漏任何内容.
Python附带的IDLE编辑器具有intellisense功能,可自动发现导入的模块,函数,类和属性.
PyCharm是支持IntelliSense的最佳Python IDE.
例如,Wingware实现自动完成,请参阅http://wingware.com/doc/edit/auto-completion.
我推荐Komodo Edit.但是,我应该指出一点:你不会得到任何与你习惯使用Visual Studio的C#intellisense一样好的东西.Python的动态特性使得很难做到这些功能.