У меня есть два вложенных списка, и я хочу рассчитать остатки для каждого элемента из двух списков.
Coeff_zeros = [(sympy.poly(expand(index_of_zero_e_m[i][1]), s).coeffs()) for i in violates]
Coeff_zeros_index = list(zip(violates, Coeff_zeros))
и
Coeff_poles = [(sympy.poly(expand(index_of_est_pole_m[i][1]), s).coeffs()) for i in violates]
Coeff_poles_index = list(zip(violates, Coeff_poles))
когда я использовал следующий код, я получил упомянутую ошибку:
from scipy.signal import residue
Modified_residues = [residue(Coeff_zeros_index[i][1], Coeff_poles_index[i][1]) for i in violates]
НО, когда я копирую и вставляю результат Coeff_zeros_index
и Coeff_poles_index
в мой код, тот же код работает без проблем. В чем проблема и что мне делать? Почему распечатка результата устраняет ошибку?
Я не могу каждый раз копировать и вставлять результаты двух списков в мой код.
когда я напечатаю Coeff_poles_index
, я получу:
Coeff_poles_index = [(0, [1.00000000000000, 5426987090.44496]), (1, [1.00000000000000, 1207636905.04548]), (2, [1.00000000000000, 590484627.473621, 8.12581014483133e+19])]
и результат Coeff_zeros_index
:
Coeff_zeros_index = [(0, [1.00000000000000, 80787271317.5307]), (1, [1.00000000000000, 13905630041.1712]), (2, [1.00000000000000, 332812172952.372, 4.17475738734003e+20])