J'ai un paquet mis en place comme ceci:Python: Problème avec des modules locaux modules globaux shadowing
packagename/
__init__.py
numbers.py
tools.py
...other stuff
maintenant à l'intérieur tools.py
, je suis en train d'importer le module de bibliothèque standard fractions
. Cependant, le module fractions
lui-même importe le module numbers
, qui est supposé être celui de la bibliothèque standard.
Le problème est qu'il tente d'importer les modules de numbers
mon paquet à la place (c.-à-mon numbers.py
est shadowing le module stdlib numbers
), et se plaint ensuite à ce sujet, au lieu d'importer le module stdlib.
Ma question est, est-il une solution de contournement pour que je puisse garder la structure actuelle de mon paquet, ou est la seule solution pour renommer mon propre module fautif (numbers.py
)?
Désolé, devrait avoir lu TFQ plus à fond. Quoi qu'il en soit, j'essaie de reproduire le problème maintenant, mais je ne peux pas. Comment exécutez-vous le code lorsque l'erreur se produit? Je peux seulement le reproduire quand je cours le code de l'intérieur du paquet. –