我有一个(1000L, 3L)
形状的可变数据,我执行以下操作来获取坐标:
x = data[:,0]
y = data[:,1]
z = data[:,2]
有没有办法打开它们?我试过但它不起作用:
[x,y,z] = data1[:,0:3]
答案 0 :(得分:2)
在解包前你可以简单地transpose:
x, y, z = data.T
解压缩“解包”数组的第一个维度,并通过转置您的数组,尺寸为3的维度将是第一个维度。这就是为什么它不能与[x, y, z] = data1[:, 0:3]
一起使用,因为它试图将1000个值解包为3个变量。
答案 1 :(得分:2)
您可以使用zip
解压缩:
x, y, z = zip(*data[:, :3])