我正在尝试将数组追加到列表中,我可以追加,.append()
但情况是追加+=
收到此错误ValueError:在执行以下代码时,操作数无法与形状 (0,) (28,28) 一起广播
unique_labels = list(set(y))
images = []
for l in unique_labels:
idx = np.where(y == l)[0]
idx = idx[np.random.permutation(len(idx))[:10]]
for i in idx:
images += x[i]
假设x[i]
是一个 numpy array
( 中的众多list
项目之一images
):
如果您希望图像成为list
numpy array
s 和 ,images.append(x[i])
并且images += [x[i]]
都可以使用,正如@Andrew 所评论的那样。
注意它应该是images += [x[i]]
而不是images += x[i]
. 为了说明,假设images
是[<object 0>, <object 1>, ..., <object n-1>]
。要添加<object n>
到images
,您应该使用
images = [<object 0>, <object 1>, ..., <object n-1>] + [<object n>]
代替
`images = [<object 0>, <object 1>, ..., <object n-1>] + <object n>`
当然,前者可以缩短为images += [<object n>]
。
如果你想images
成为一个list
的list
已经从numpy的转换小号array
S,呼叫.tolist()
前加入x[i]
到images
,即
images += [x[i].tolist()]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句