python Type hinting without cyclic import Classes.
Détails:
Dans Python 3.4, une classe est divisée en deux fichiers (main.py et mymixin.py), où mymixin.py contient une classe de mixin qui hérite de la classe principale dans main.py (c'est-à-dire la classe Main (objet, Mymixin) :). Tapez la distinction des méthodes de Mymixin nécessite de spécifier le type de retour comme «main», conduisant à un problème d'importation cyclique.
python 3.4 Solution:
pour contourner l'importation cyclique tandis que le type de type, une approche personnalisée utilisant une déclaration avant est utilisée. En utilisant la constante «type_checking» du module «Taping», l'instruction d'importation dans le bloc d'annotation de type est ignorée pendant l'exécution. L'annotation de type «Main» est également convertie en une chaîne pour la déclarer.
python 3.7 Solution (pep 563):
En utilisant la déclaration d'importation «FromNettoyant.
Malgré ces solutions de contournement, l'utilisation de mixins avec la fabrication de types peut encore nécessiter une restructuration pour garantir que la vérification de type pycharm et mypy fonctionne comme prévu. MyPy recommande de créer un ABC à partir de laquelle les classes principales et mixins héritent.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3