Eclipse 上的 Pydev 运行 隐藏 numpy 库的错误(已删除)文件

Pydev on Eclipse running wrong (deleted) file which shadowed numpy library

我刚刚在玩弄 NumPy 的基本功能时犯了一个大的菜鸟错误。我创建了一个名为 "numpy.py" 的小文件,以便解决与 numpy 相关的问题。我也可以稍后回来参考 - 这个名字会有所帮助。明显错误:-

import numpy
  File "C:\Users\USERNAME\workspace\Whosebug\python\numpy.py", line 25, in <module>
AttributeError: 'module' object has no attribute 'random'

我意识到了这个问题 - python 正在将我当前的代码视为实际的 numpy 并寻找随机数。我删除了那个文件并创建了一个新文件。

问题依旧。这个图像比我的话更好地解释了它。

现在有一个名称不同的全新文件 - 但它仍然在已删除文件中寻找一些方法。

我已经试过了:

我想知道 (1) 这里究竟出了什么问题?为什么eclipse这么乱(二)如何解决? (3) 在这种情况下的最佳做法是什么?

我是OP。发布此问题几分钟后找到了解决方案。

浏览到包含代码的文件夹。我注意到我之前创建的 numpy.pyc 有一个 .pyc 文件。删除了那个文件,现在一切正常。

不过我还是想知道如何避免这种情况或者直接通过eclipse解决。虽然它现在有效!

这称为孤立.pyc 文件。 Eclipse/PyDev 现在有一个自动处理这些的设置(从 Oxygen / v4.7 开始):

PyDev > Builders > "How to handle .pyc/$py.class deletion?" :
  Delete any orphaned .pyc file

了解 Eclipse,大概只有当您或它刷新或重新启动工作区或触发重建时才会触发该操作。也有一些开关可以尝试使其自动化。或者 Eclipse > 如果所有其他方法都失败则重新启动。