Le importazioni sono dinamiche in modo PyCharm non può fare alcuna analisi statica del codice per determinare il tipo di informazioni .
Pycharm aggira questo per linguaggi come javascript utilizzando file di definizione di tipo statico (Impostazioni -> Lingue & Framework -> Javascript -> Librerie).
Questo è l'equivalente python: https://www.jetbrains.com/help/pycharm/2016.2/using-python-skeletons.html - un insieme parallelo di file python con esportazioni statiche che consentono l'analisi statica.
Al momento attuale le definizioni scheletro sembra essere davvero una prova di concetto in quanto sono molto sparse (non c'è six
, e mentre un modulo django
esiste è quasi vuoto - non v'è alcuna django.utils.six.moves
che si potrebbe semplicemente copiare). È possibile aggiungere manualmente tutte le esportazioni six.moves
ma questo sarebbe uno sforzo non banale.
Se avete voglia di provare a modificare i file di scheletro, su OSX:
cd ~/Library/Preferences/PyCharm2016.2 git clone https://github.com/JetBrains/python-skeletons.git
e modificare i file in là (anche se non sono mai stato realmente in grado di farlo per rilevare le mie modifiche)