Podpowiedzi typu Python bez cyklicznych importów

| | | | | | | | | |

Próbuję podzielić moją ogromną klasę na dwie; cóż, zasadniczo na klasę "główną" i mixin z dodatkowymi funkcjami, takimi jak:

main.py plik:

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

mymixin.py file:

class MyMixin(object): def func2(self: Main, xxx): # <--- zwróć uwagę na wskazówkę dotyczącą typu ... 

Teraz, chociaż działa to dobrze, wskazówka typu w MyMixin.func2 oczywiście nie działa. Nie mogę zaimportować main.py, ponieważ otrzymuję import cykliczny i bez podpowiedzi mój edytor (PyCharm) nie może powiedzieć, czym jest self.

Używam Pythona 3.4, chętnie przejdę na 3.5, jeśli rozwiązanie jest tam dostępne.

Czy jest jakiś sposób, aby podzielić moją klasę na dwa pliki i zachować wszystkie połączenia ", aby moje środowisko IDE nadal oferowało mi automatyczne uzupełnianie & wszystkie inne gadżety, które z niego pochodzą, znając typy?