Pycharm、PyQt5 和 Python 2.7——没有代码完成

Pycharm, PyQt5, and Python 2.7 -- No code completion(Pycharm、PyQt5 和 Python 2.7——没有代码完成)
本文介绍了Pycharm、PyQt5 和 Python 2.7——没有代码完成的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我有:

  • Python 2.7 (Anaconda x64),效果很好
  • PyQt5(使用 pip install python-qt5 安装)
  • PyCharm 4.04 Professional(最近从 3.4.1 升级)
  • 一个小型Qt应用程序
  • Python 2.7 (Anaconda x64), which works great
  • PyQt5 (installed using pip install python-qt5)
  • PyCharm 4.04 Professional (recently upgraded from 3.4.1)
  • A small Qt application

费尽心思(因为 Riverbank 没有为 Python 2.7 提供 PyQt5 二进制文件,仅适用于3.3+) 多亏了 Marcus Otosson 的 预编译的二进制包,我得到了一切工作.

After much hair-pulling (since Riverbank doesn't provide a PyQt5 binary for Python 2.7, only for 3.3+) I got everything working thanks to Marcus Otosson's pre-compiled binary packages.

Qt 现在已安装并且功能齐全.我的 Qt 应用程序运行良好!

Qt is now installed and fully functional. My Qt application runs great!

但应用程序尚未完成,并且 PyCharm 不会为 PyQt 模块完成代码完成.它甚至无法识别任何 PyQt5 子模块(如 Qwidgets)的存在:即使它们工作得很好,我仍然会收到红色波浪形 "Unresolved Reference" 警告.

But the application isn't finished yet, and PyCharm won't do code completion for the PyQt modules. It won't even recognize that any PyQt5 sub-modules (like Qwidgets) exist: even though they work just fine, I still get the red squiggly "Unresolved Reference" warning.

我该如何解决这个问题?我认为这与为二进制 *.pyd 文件生成骨架的固有困难有关.它是如何工作的?我可以手动生成代码骨架,还是从它们正确生成的地方导入它们?

How do I fix this? I assume this has to do with the inherent difficulties in generating skeletons for binary *.pyd files. How does it work exactly? Can I manually generate code skeletons, or import them from somewhere they generated correctly?

卸载并重新安装 PyCharm 没有帮助.重新配置解释器也没有强制骨架生成器再次运行.

Uninstalling and re-installing PyCharm didn't help. Neither did re-configuring the interpreter to force the skeleton generator to run again.

在我秃顶之前请帮忙.

推荐答案

在 PyCharm 2017.1.1 中遇到了同样的问题.不要这样做

Had the same problem in PyCharm 2017.1.1. Don't do

import PyQt5.QtWidgets

from PyQt5 import QtWidgets

这篇关于Pycharm、PyQt5 和 Python 2.7——没有代码完成的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Multiprocessing on Windows breaks(Windows 上的多处理中断)
How to use a generator as an iterable with Multiprocessing map function(如何将生成器用作具有多处理映射功能的可迭代对象)
read multiple files using multiprocessing(使用多处理读取多个文件)
Why does importing module in #39;__main__#39; not allow multiprocessig to use module?(为什么在__main__中导入模块不允许multiprocessig使用模块?)
Trouble using a lock with multiprocessing.Pool: pickling error(使用带有 multiprocessing.Pool 的锁时遇到问题:酸洗错误)
Python sharing a dictionary between parallel processes(Python 在并行进程之间共享字典)