10

Linux で PyDev を使用してコードを記述しているときに、この奇妙なエラーに遭遇しました。このような単純なコードでもエラーが発生します

print 'Hello World'

エラーはここにあります

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

私のモジュールの名前はsample.pyです。私を助けてください。ありがとう

4

2 に答える 2

31

私の推測では、abc.pyまたは作業ディレクトリまたはPYTHONPATHのいずれかabc.pycに名前が付けられたファイルがあり、そのファイルがstdlibabcモジュールをシャドウイングしていると思います。

于 2012-04-23T00:46:46.310 に答える
0

ほとんどの場合、Python スクリプトのファイル名は「abc」で、「abc」は Python の標準ライブラリのモジュールです。

ファイル名を変更してスクリプトを再度実行すると、エラーが解消され、スクリプトが正常に動作します。

于 2014-12-09T06:00:47.053 に答える