我正在尝试将 Matlab 代码转换为 Python,并且在转换一行时遇到了问题。我是对还是错?我不知道如何在 Python 中进行赋值。
MATLAB:
for j=1:a
diff_a=zeros(1,4);
diff_b=zeros(1,4);
for i=1:4
diff_a(i)=abs(ssa(j)-check(i));
diff_b(i)=abs(ssb(j)-check(i));
end
[Y_a,I_a]=min(diff_a);
end
Python:
for j in arange(0,a):
diff_a=zeros(4)
diff_b=zeros(4)
for i in arange(0,4):
diff_a[i]=abs(ssa[j]-check[i])
diff_b[i]=abs(ssb[j]-check[i])
[Y_a,I_a]=min(diff_a)
最后一行给出了这个错误:
TypeError:“numpy.float64”对象不可迭代
问题出在最后一行。diff_a
是一个复数数组。很抱歉没有提供整个代码(它太大了)。