J'essaie de diviser mon énorme classe en deux ; eh bien, essentiellement dans la classe "principale" et un mixin avec des fonctions supplémentaires, comme ceci :
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): # <--- notez l'indice de type ...
Maintenant, bien que cela fonctionne très bien, l'indication de type dans MyMixin.func2
ne peut bien sûr pas fonctionner. Je ne peux pas importer main.py
, car j'obtiendrais une importation cyclique et sans l'indice, mon éditeur (PyCharm) ne peut pas dire ce qu'est self
.
J'utilise Python 3.4, prêt à passer à 3.5 si une solution y est disponible.
Est-il possible de diviser ma classe en deux fichiers et de conserver toutes les "connexions " pour que mon IDE me propose toujours l'auto-complétion & tous les autres goodies qui en découlent connaissant les types ?