Python-无法导入`linalg`

时间:2018-10-03 10:02:22

标签: python import

我有此代码

import scipy.sparse as sparse
import numpy as np

id = np.eye(13)
vals, vecs = sparse.linalg.eigsh(id, k=6)
vals

这只是文档here中的示例代码。

我正在Python 2.7控制台中运行它,并收到以下错误消息:

  

AttributeError:“模块”对象没有属性“ linalg”

有人知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

尝试此代码

import scipy.sparse.linalg as sp
import numpy as np

id = np.eye(13)
vals, vecs = sp.eigsh(id, k=6)
vals

之所以会这样,是因为linalg是目录而不是源代码,即它是子包。而且我想这可能是导致此问题的原因,因为某些Scipy子模块没有__init__.py,也许开发人员这样做是为了减少顶级程序包的加载时间。您可以在此link

的“组织组织”部分中找到此信息。