ci0 = np.random.randint(10,size=(15,))
uq,ix = np.unique(ci0, return_index=True):
for i,u in zip(uq,ix):
print i,u
有没有一种很好的蟒蛇方式可以在一行中做到这一点?具体来说,迭代np.unique的结果(作为元组返回(。
似乎应该有,但我能想到的唯一解决方案是这个,我认为这个太模糊了,不太优雅:
for i,u in np.transpose(np.unique(ci0, return_index=True)):
您可以使用参数拆包(splatting(:
ci0 = np.random.randint(10,size=(15,))
for i,u in zip(*np.unique(ci0, return_index=True)):
print i,u
为了更好地解释,请考虑以下代码:
func(*(1, 2, 3))
它相当于:
func(1, 2, 3)