47 votes

Pourquoi cette AttributeError en python se produit-elle ?

Il y a une chose que je ne comprends pas.

Pourquoi cela

 import scipy # happens with several other modules, too. I took scipy as an example now...

matrix = scipy.sparse.coo_matrix(some_params)

produire cette erreur :

 AttributeError: 'module' object has no attribute 'sparse'

5voto

Dan Points 7970

Parce que vous avez importé scipy, pas sparse. Essayez from scipy import sparse ?

-3voto

Anirudh Points 1

L'espace de noms par défaut en Python est "__main__" . Lorsque vous utilisez import scipy , Python crée un espace de noms distinct en tant que nom de module. La règle dans Pyhton est la suivante : lorsque vous souhaitez appeler un attribut à partir d'un autre espace de noms, vous devez utiliser le nom d'attribut complet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X