Hinweise auf Python-Typen ohne zyklische Importe

| | | | | | | | | |

Ich versuche, meine riesige Klasse in zwei Teile aufzuteilen; nun, im Grunde in die "Haupt"-Klasse und ein Mixin mit zusätzlichen Funktionen, etwa so:

main.py file:

import mymixin.py class Main(object, MyMixin): def func1(self, xxx): ... 

mymixin.py file:

class MyMixin(object): def func2(self: Main, xxx): # <--- beachte den Typhinweis ... 

Nun, während dies gut funktioniert, kann der Typhinweis in MyMixin.func2 natürlich nicht funktionieren. Ich kann main.py nicht importieren, weil ich einen zyklischen Import erhalten würde und mein Editor (PyCharm) ohne den Hinweis nicht erkennen kann, was self ist.

Ich verwende Python 3.4 und bin bereit, auf 3.5 umzusteigen, wenn dort eine Lösung verfügbar ist.

Gibt es eine Möglichkeit, meine Klasse in zwei Dateien aufzuteilen und alle "connections " damit meine IDE mir immer noch die automatische Vervollständigung anbietet & all die anderen Leckereien, die daraus resultieren, die Typen zu kennen?