Python 无法将numpy值附加到循环内的列表中

Python 无法将numpy值附加到循环内的列表中,python,numpy,Python,Numpy,对于列表p,我不能附加numpy值。下面给出了错误消息和代码 我将非常感谢您的帮助。您在以下行中意外地重用了p作为迭代器: value = [p for p in X.T[index]] 因此p被重新分配为numpy.int32而不是列表。您意外地将p重新用作行中的迭代器: value = [p for p in X.T[index]] 因此p被重新分配为numpy.int32而不是列表。您重用了p变量: p = [] ... value = [p for p in X.T[ind

对于列表p,我不能附加numpy值。下面给出了错误消息和代码


我将非常感谢您的帮助。

您在以下行中意外地重用了p作为迭代器:

value = [p for p in X.T[index]]

因此p被重新分配为numpy.int32而不是列表。

您意外地将p重新用作行中的迭代器:

value = [p for p in X.T[index]]

因此p被重新分配为numpy.int32而不是列表。

您重用了
p
变量:

p = []
...
    value = [p for p in X.T[index]]
#                  ^

选择其他名称。

您重新使用了
p
变量:

p = []
...
    value = [p for p in X.T[index]]
#                  ^

选择一个不同的名称。

这段代码很难理解。有一些无意义的操作,比如
asscalar
调用,或者在不需要它们的地方构建列表。您也反复地重新计算
np.argmax(输出,轴=2)
。NumPy代码几乎不应该涉及列表理解。这段代码真的很难理解。有一些无意义的操作,比如
asscalar
调用,或者在不需要它们的地方构建列表。您也反复地重新计算
np.argmax(输出,轴=2)
。NumPy代码几乎不应该涉及列表理解。