获取六个和六个移动模块以在pycharm中自动完成

kyl*_*215 21 python ide intellij-idea pycharm six

是否有可能让六个模块的导入在pycharm中工作?我意识到该模块会使用导入混淆pycharm但是希望有某种类型的解决方法.

例如,我希望以下内容在pycharm或intellij中正常工作::

from six.moves import BaseHTTPServer
Run Code Online (Sandbox Code Playgroud)

Lev*_*evi 3

导入是动态的,因此 pycharm 无法对代码进行任何静态分析来确定类型信息。

Pycharm 通过使用静态类型定义文件(设置 -> 语言和框架 -> Javascript -> 库)来解决 javascript 等语言的这个问题。

这是 python 等效项: https://www.jetbrains.com/help/pycharm/2016.2/using-python-sculpts.html - 一组并行的 python 文件,具有允许静态分析的静态导出。

目前,骨架定义似乎确实是概念证明,因为它们非常稀疏(没有six,虽然django存在模块,但它几乎是空的 - 没有django.utils.six.moves可以复制的东西)。您可以手动添加所有six.moves导出,但这将是一项不小的工作。

如果您确实想尝试修改框架文件,在 OSX 上:

cd ~/Library/Preferences/PyCharm2016.2 git clone https://github.com/JetBrains/python-skeletons.git 并修改其中的文件(尽管我实际上从未能够让它检测到我的更改)