在迭代列表时,顺序是从第0个元素到最后一个元素。但是对于scipy的chebyt函数的返回值,我不清楚迭代是如何进行的。请考虑以下代码:
from scipy.special import chebyt
import numpy as np
ChebyOrder = 5
Coeffs = chebyt(ChebyOrder)
print 'Chebyshev polynomial is: '+repr(Coeffs)
Chebyshev polynomial is: poly1d([ 1.60000000e+01, 5.32907052e-15, -2.00000000e+01,
-5.12827628e-15, 5.00000000e+00, 3.71174867e-16])
但迭代索引会给出:
L = len(Coeffs)
print '(1) Iterating over index: '
for i in range(L+1):
print Coeffs[i]
(1) Iterating over index:
3.71174867001e-16
5.0
-5.12827627586e-15
-20.0
5.3290705182e-15
16.0
而迭代列表会给出:
print '(2) Iterating over list'
for c in Coeffs:
print c
(2) Iterating over list
16.0
5.3290705182e-15
-20.0
-5.12827627586e-15
5.0
3.71174867001e-16
从Chebyshev多项式的打印或迭代列表,第0个元素似乎是16(x ^ 4的系数),而通过迭代系数索引,第0个元素似乎是0(x ^ 0的系数) )。有人可以解释一下吗?