我以前从未真正使用过pycharm,但曾经使用过其他JetBrains产品,我希望自动完成功能能够正常工作。
在tkinter
之类的模块上使用时,在编写tk.
之后,我将使用tk.Tk()
之类的方法获得自动完成功能。但是,当在另一个模块(默认情况下还包括在python中)使用ctypes时,我不会获得这种自动完成功能。
如果我开始编写windll
,我将获得一个自动完成功能,但此后将无法获得自动完成功能,因此,如果我编写windll.user32
,这是一个运行完全正确的代码很好,我无法知道user32
是否存在,ctrl + space不会显示任何内容。
然后成功创建了变量,但是使用myVar.
则什么也没有显示。我正在使用anaconda(但也尝试使用默认的python),并且解释器设置很好。
我错过了什么吗?
答案 0 :(得分:0)
PyCharm使用静态分析来提供完成,检查,代码洞察功能等。
静态分析意味着读取项目文件并从类,函数,属性的预期定义中提取知识。
由于Python的动态特性,其中一些成员可以通过赋值,具有副作用的函数等动态声明。
这可能是某些情况下无法完成的原因。