导入numpy时出错

2024-03-16

当我尝试导入 numpy 时,出现奇怪的错误:

Traceback (most recent call last):
  File "/home/timo/malltul/mafet/src/mafet/core/pattern.py", line 7, in <module>
    import numpy as np
  File "/usr/lib/python2.6/dist-packages/numpy/__init__.py", line 147, in <module>
    import ma
  File "/usr/lib/python2.6/dist-packages/numpy/ma/__init__.py", line 44, in <module>
    import core
  File "/usr/lib/python2.6/dist-packages/numpy/ma/core.py", line 4850, in <module>
    all = _frommethod('all')
  File "/usr/lib/python2.6/dist-packages/numpy/ma/core.py", line 4824, in __init__
    self.__doc__ = self.getdoc()
  File "/usr/lib/python2.6/dist-packages/numpy/ma/core.py", line 4830, in getdoc
    signature = self.__name__ + get_object_signature(meth)
  File "/usr/lib/python2.6/dist-packages/numpy/ma/core.py", line 109, in get_object_signature
    import inspect
  File "/usr/lib/python2.6/inspect.py", line 39, in <module>
    import tokenize
  File "/usr/lib/python2.6/tokenize.py", line 38, in <module>
    COMMENT = N_TOKENS
NameError: name 'N_TOKENS' is not defined

看来问题的原因是我的脚本位于我自己的名为core每当我尝试导入时numpy在那里,我得到了错误。在其他地方导入效果很好。

到目前为止,我得到的唯一解决方案是将我的“核心”包重命名为其他名称。为什么这很重要?难道我做错了什么?

我在 Ubuntu 10.14 上使用 Python2.6 。 Numpy 版本是 1.3.0 。

编辑:实际上重命名我的包并不能解决问题。重命名我的包中的 token.py 可以修复它。对于这个错误,我们深表歉意。


我怀疑这和你有什么关系core模块或与numpy.

从堆栈跟踪来看,问题出在tokenize模块,它是Python的一部分,而不是numpy. Tokenize does from token import *然后使用N_TOKENS这是定义在token.py.

首先,我会检查是否有名为的杂散模块token在你的PYTHONPATH:

>>> import token
>>> token.__file__
'/usr/lib/python2.6/token.pyc'

如果安装了上述文件但问题仍然存在,我建议重新安装 Python。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

导入numpy时出错 的相关文章

随机推荐