IDLE在实际显示自动完成菜单的时候非常狡猾。最近它根本没有工作,或者更具体地说,只在交互式会话期间工作。
我一直在使用Code Blocks for C,并且已经习惯了非常好的自动完成功能,所以没有它们会有点令人沮丧 - 特别是在尝试学习新的框架工作以及什么类是与哪些方法等相关联。
是否有一个简单的方法可以让IDLE自动完成再次工作?我正在使用python版本2.7。
我应该研究一下简单的编辑器吗?我已经尝试过Vim,它对我的简单需求来说有点太重了,Ninja,我无法为任何事情工作,而Sublime文本2,我无法得到我的wxpython游戏。什么是一个不错的选择?任何类似于Code Blocks的东西都会很酷,但是,如果IDLE一直有用的话,我会非常满意!
请求澄清: 好的,所以看起来我的术语可能会倒退一些。通过非交互式,我的意思是,例如,右键单击py文件并选择“使用IDLE编辑”。这提出了我认为可以描述为文本编辑器的内容。您可以在这里输入所有代码。一旦准备好,然后按F5,或选择Run,它将启动(我称之为)交互式终端。在这里,您可以输入代码,按回车键,并立即评估该代码。
我的问题是指前者,IDLE中编辑代码的部分。有时在打字时,经过一次。它将显示可用的方法,或者在打开括号后,它将给出关于预期值的提示。但问题是,有时它会做这些事情,有时却没有。
答案 0 :(得分:12)
我到目前为止唯一发现的是,如果IDLE的编辑会话与python shell连接(在问题中称为“交互模式”,即在尝试运行编辑后的脚本之后),那么“非交互式”IDLE可以根据交互式窗口中的值自动完成。例如,如果我输入
a = [];
a.appen
然后点击<标签>它什么都不做,但如果我以前输入
a = []
在相应的python shell中,IDLE将自动完成正确。
所以我唯一的建议是在python shell窗口中导入相同名称的相同模块,以使它们对于非交互式IDLE编辑器“可见”。
答案 1 :(得分:10)
我和IDLE有同样的问题,因为我想学习Qt,因此自动完成非常有用。 正如它在IDLE设置中所说,您可以使用“Control + Space”触发自动完成功能,例如在“QtGui。”之后。然后会打开一个菜单,您可以在其中滚动条目。
答案 2 :(得分:0)
就我而言,我必须打开选项菜单 - >编辑器上的“扩展”选项卡,以确保启用了“自动完成”和其他相关选项。他们实际上是,但只需点击“应用”即使我必须改变任何东西对我来说都是诀窍。
答案 3 :(得分:0)
有时它与你必须等待获得建议的时间有关。
当您在options > extensions > general
转到completions popup wait
时,您可以将其更改为约500毫秒。
在我的情况下,它默认为2000毫秒。
答案 4 :(得分:-1)
使用“IDLE Editor窗口”,您需要先保存并执行代码。 应用程序运行后,返回编辑器窗口以使用自动完成功能。