如果我在IDLE上测试我的代码,则自动完成它的工作但如果我打开一个新文件则不行。
见下面的图片:
答案 0 :(得分:1)
在尝试使用IDLE的自动填充功能之前,您是否尝试将脚本另存为* .py文件?
更重要的是,您是否考虑过使用带有Python插件的文本编辑器,例如Sublime Text和Atom?甚至是兼容python的IDE,比如PyCharm,Spyder甚至是JupyterNotebook。
答案 1 :(得分:1)
Python空闲不会那样工作。您在空闲shell中获得自动完成,因为在每次运行中都会推导出值。使用文件时,在运行之前不会评估程序。因为您可以在运行时将任何类型分配给变量,所以无法通过空闲来确认变量的类型。
了解一个例子
>> a = dict()
>> a = set()
>> a. # <-- autocomplete knows type of a is set
但文件中的代码相同
a = dict()
a = set()
a. # <-- How does idle come to know what this variable is without running
但是当您的全局变量显示自动完成功能,而不是本地范围变量时,运行此文件。