2012-04-23 2 views
6

Mi sono imbattuto in questo strano errore mentre scrivevo codice usando PyDev su Linux. Anche un semplice codice come questo produce erroreImportError: impossibile importare il nome ABCMeta - Errore Python in PyDev su Linux

print 'Hello World' 

e l'errore è qui

True 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/site.py", line 62, in <module> 
    import os 
    File "/usr/lib/python2.7/os.py", line 398, in <module> 
    import UserDict 
    File "/usr/lib/python2.7/UserDict.py", line 83, in <module> 
    import _abcoll 
    File "/usr/lib/python2.7/_abcoll.py", line 11, in <module> 
    from abc import ABCMeta, abstractmethod 
ImportError: cannot import name ABCMeta 

mio modulo si chiama sample.py. Per favore aiutatemi. Grazie

risposta

19

La mia ipotesi è che si dispone di un file chiamato sia abc.py o abc.pyc nella directory di lavoro o di PYTHONPATH e quella ombre il modulo stdlib abc.

+1

grazie, controllo nuovamente nella cartella sul posto di lavoro e scopro il male abc.py. Dopo averlo eliminato, il mio programma funziona perfettamente. –

+0

Sì, ha funzionato per me. Ho avuto un file chiamato abc.py. L'ho appena rimosso e tutto ha funzionato correttamente. –

0

Molto probabilmente il nome del file degli script Python è "abc" e "abc" è un modulo della libreria standard di python.

Modificare il nome del file ed eseguire nuovamente lo script, l'errore verrà rimosso e lo script funzionerà correttamente.