2012-04-23 6 views
6

Ten dziwny błąd napotkałem podczas pisania kodu za pomocą PyDev na Linuksie. Nawet prosty kod tak produkuje błądImportError: nie można zaimportować nazwy ABCMeta - Błąd Pythona w PyDev na Linuksie

print 'Hello World' 

a błąd jest tutaj

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 

mój moduł o nazwie sample.py. Proszę, pomóż mi. Dzięki

Odpowiedz

19

Domyślam się, że masz plik o nazwie albo abc.py lub abc.pyc w katalogu roboczym lub PYTHONPATH i że cienie z stdlib moduł abc.

+1

dzięki, sprawdzam ponownie w folderze w miejscu pracy i poznaję zło abc.py. Po jego usunięciu mój program działa idealnie. –

+0

Tak to działało dla mnie. Miałem plik o nazwie abc.py. Właśnie go usunąłem i wszystko zaczęło działać dobrze. –

0

Najprawdopodobniej nazwa pliku skryptu Pythona to "abc", a "abc" to moduł standardowej biblioteki Pythona.

Zmień nazwę pliku i uruchom skrypt ponownie, błąd zostanie usunięty, a skrypt będzie działał poprawnie.