2011-05-15 5 views
0

J'ai fait quelques recherches sur cette question et rien ne semble y remédier, je suppose que je suis peut-être accidentellement importer quelque part, mais celui-ci m'a bloqué.Python ImportError (Impossible d'importer le nom Variables)

Ce package est un cadre de service Python IRC. Le problème se produit lors du chargement dynamique d'un module (via imp.load_source()) et le nouveau module tente d'importer quelque chose à partir du dossier src (Variables.py). Il échoue avec "Impossible d'importer des variables de nom", pourtant, il importe un autre module du même répertoire sans se plaindre.

Voici l'erreur spécifique:

**ERROR: ModLoad(): Unable to load module /home/sam/workspace/Affinity/bin/../modules/ircd_affinity.py: cannot import name Variables **

Ceci est le fichier complet pour les modules/ircd_affinity.py: ircd_affinity.py et src/Variables.py: Variables.py

Si ça aide. parcourir le référentiel entier ... ce module (https://github.com/miniCruzer/Affinity/blob/master/src/Affinity.py) (commençant à la ligne) charge les modules.

Je vous serais reconnaissant si toutes les réponses ont été gardés pertinents à la question spécifique à portée de main. Oui, il peut être tentant de suggérer d'autres choses que je fais de mal ou d'autres dans l'ensemble du paquet - je suis le bienvenu aux suggestions: envoyez-les moi par courriel.

+0

Juste comme une tactique de débogage, avez-vous essayé de renommer src à quelque chose de plus unique et essayez d'importer avec le nouveau nom? Peut-être qu'il est possible qu'il regarde un autre module "src". "Client" est également commun. – Karim

+0

Juste essayé, j'ai renommé 'src' en 'herp', il me donne la même erreur, donc c'est en effet en regardant le bon répertoire. – miniCruzer

+0

Ok. L'autre possibilité est qu'une erreur s'est produite lors de l'importation du module Variables. Si vous avez tout supprimé du fichier "Variables.py", l'importera-t-il correctement? Si c'est le cas, il suffit de rajouter de petits bits à la fois pour voir ce qui cause le problème. – Karim

Répondre

0

Afficher le retraçage complet. Regardez à travers pour évidence de (tentative) importation circulaire.

Exécutez Python avec l'option -v ... qu'est-ce que cela vous dit?

Examinez le contenu de sys.path et sys.modules juste avant que l'erreur se produise. "** ERREUR: ModLoad(): Impossible de ..." n'a pas l'air d'une erreur provoquée par Python "

" ** Est-ce que c'est dans ton code? Si oui, creuser plus profondément; pourquoi est-il élevé?

Questions connexes