python - Pycharm 自动完成功能不适用于某些包
问题描述
我以前从未真正使用过 pycharm,但使用过其他 JetBrains 产品,我希望自动完成功能能够正常工作。
在模块 like 上使用时tkinter
,写完后tk.
我会得到自动完成功能,方法是tk.Tk()
. 但是,当在另一个模块(默认情况下也包含在 python 中)ctypes 上使用时,我没有得到那种自动完成功能。
如果我开始写windll
,我会得到一个自动完成,但在那之后不会得到一个,所以如果我写windll.user32
,这是一个运行良好的完全有效的代码,我无法知道是否user32
存在, ctrl+space 什么都不显示。
然后成功创建了变量,但 usingmyVar.
没有显示任何内容。我正在使用 anaconda(但也在默认 python 上尝试过)并且解释器设置得很好。
我错过了什么吗?
解决方案
PyCharm 使用静态分析来提供补全、检查、代码洞察功能等。
静态分析意味着读取项目文件并从类、函数、属性的预期定义中提取知识。
由于 Python 的动态特性,其中一些成员可以通过赋值、具有副作用的函数等动态声明。
这可能是在某些情况下无法完成的原因。
推荐阅读
- tensorflow - 在 Ubuntu Bionics 上找不到 Tensorflow GPU /device:GPU:0
- python-3.x - python spyder-ide在拆分窗口之间切换
- arrays - Excel IF 函数查询 - 日期
- rest - 在 post 方法 spring boot 的情况下调用经过身份验证的 rest web 服务失败
- node.js - WebStorm 调试器第一次未附加
- security - 如何禁用 tomcat 以纯文本形式记录密码?
- angular - JWT 模块中的 Angular 5 tokenGetter 方法不设置令牌
- python - django 对 MongoDB 的官方支持
- r - Why can't R read the text file
- excel - 通过引用值通过循环将公式输入到单元格中