在Mac Sierra上运行,Spyder(来自Anaconda发行版)的自动完成似乎非常不稳定.从Ipython控制台使用时,按预期工作.但是,当从编辑器中使用时(这是我的主要写作方式),是不稳定的.对于某些模块,例如pandas或matplotlib,自动完成工作(即,当按下TAB时会出现一个显示选项的小框).所以写'pd.' 然后点击TAB,按预期获得带有选项的框.但是,许多其他对象不会发生这种情况:例如,在定义名为"df"的数据框之后,键入"df".TAB什么都没显示.在Ipython控制台中,'df.' TAB将显示该数据帧的可用过程,例如groupby,以及它的列等.
所以问题是三重的.首先,是否有任何特定的配置应该启用以使其工作?我不这么认为,考虑到花时间谷歌搜索,但只是想确定.其次,有人可以说明在自动完成方面哪些有效,哪些无效的官方用语(例如,哪些特定模块在编辑器中起作用,哪些不起作用?).最后,编辑器和Ipython控制台在与Spyder实现自动完成功能方面存在差异的技术方面是什么?我读了一些关于Jedi vs. PsychoPy模块的内容,所以很好奇(但请记住,虽然我有科学经验,但我对计算相对较新,所以对于受过教育但不是专家的人来说,请保持相当简单).
更新:作为一个附带问题,很高兴知道为什么Rodeo(另一个IDE)中的自动完成更好.它比Spyder更新,总体选项更少,但自动完成功能在编辑器中完美运行.