импортирует являются динамичными так PyCharm не может делать какие-либо статический анализ кода, чтобы определить информацию о типе ,
Pycharm обходит это для таких языков, как javascript, используя файлы определения статического типа (Настройки -> Языки & Рамки -> Javascript -> Библиотеки).
Это эквивалент python: https://www.jetbrains.com/help/pycharm/2016.2/using-python-skeletons.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
и изменять файлы там (хотя я никогда не был на самом деле в состоянии получить его, чтобы обнаружить мои изменения)