将scipy
导入Python时出错。我写的时候:
import scipy as sp
x2 = lambda x: x**2
print sp.integrate.quad(x2, 0, 4)
我收到错误:
sp.integrate.quad: "NameError: name 'integrate' is not defined".
为什么我收到此错误?
答案 0 :(得分:4)
导入scipy
不会自动加载integrate
子包。使用:
from scipy.integrate import quad
或
import scipy.integrate as spi
并使用spi.quad
来自文档(或者更确切地说,是SciPy的__init__.py
文件):
... Subpackages ----------- Using any of these subpackages requires an explicit import. For example, ``import scipy.cluster``. :: cluster --- Vector Quantization / Kmeans fftpack --- Discrete Fourier Transform algorithms ... integrate --- Integration routines [*] ...