首页 > 解决方案 > Pycharm 自动完成功能不适用于某些包

问题描述

我以前从未真正使用过 pycharm,但使用过其他 JetBrains 产品,我希望自动完成功能能够正常工作。

在模块 like 上使用时tkinter,写完后tk.我会得到自动完成功能,方法是tk.Tk(). 但是,当在另一个模块(默认情况下也包含在 python 中)ctypes 上使用时,我没有得到那种自动完成功能。

如果我开始写windll,我会得到一个自动完成,但在那之后不会得到一个,所以如果我写windll.user32,这是一个运行良好的完全有效的代码,我无法知道是否user32存在, ctrl+space 什么都不显示。

然后成功创建了变量,但 usingmyVar.没有显示任何内容。我正在使用 anaconda(但也在默认 python 上尝试过)并且解释器设置得很好。

我错过了什么吗?

标签: pythonpycharm

解决方案


PyCharm 使用静态分析来提供补全、检查、代码洞察功能等。

静态分析意味着读取项目文件并从类、函数、属性的预期定义中提取知识。

由于 Python 的动态特性,其中一些成员可以通过赋值、具有副作用的函数等动态声明。

这可能是在某些情况下无法完成的原因。


推荐阅读