属性错误:'module'对象(scipy)没有属性*** 为什么会出现这个错误?

25
在Scipy中,错误经常发生。
>>> import scipy
>>> scipy.integrate.trapz(gyroSeries, timeSeries)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'integrate'
>>> 

我通过以下方式解决了这个问题:

>>> 
>>> import scipy.integrate
>>> scipy.integrate.trapz(gyroSeries, timeSeries)
>>> 1.2

我的问题:

为什么会出现错误?

为什么这样做可以解决错误?


http://docs.python.org/2/tutorial/modules.html#packages - Ashwini Chaudhary
3个回答

25

很可能是因为scipy是一个包含多个模块的库(包),如果要从scipy库中导入特定的模块,需要明确指定并导入这个模块本身。由于它是一个单独的模块(子包),一旦导入它,您可以使用常规的scipy.module.attribute来访问其属性。


5
为了修复错误,请在您的脚本顶部添加以下行:
from scipy import integrate

1

只需要简单地使用

import scipy.constants as spc

然后

C   = spc.c #speed of light m/s
pi  = spc.pi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接