2012-08-14 69 views
1

一直在我的頭撞了幾個小時,這是儘可能乾淨,因爲我可以得到它,但它似乎可以變乾淨。凝結串行for循環

center1_x = np.mean([q[0] for q in coordinates if q[-1]==0]) 
center2_x = np.mean([q[0] for q in coordinates if q[-1]==1]) 
center3_x = np.mean([q[0] for q in coordinates if q[-1]==2]) 
centers_x=[center1_x,center2_x,center3_x] 

座標是子列表的列表,其中每個子列表包含在[0],Y座標處的X座標[1],並在一個段數[-1],即:

[[338.766845703125, 285.3931884765625, 0], [198.39230346679688, 184.1259307861328, 1], [356.7226867675781, 281.6376953125, 0], [200.93394470214844, 194.82655334472656, 1], [228.03591918945312, 297.79864501953125, 2], [226.06724548339844, 295.5475769042969, 2], [246.51475524902344, 280.373779296875, 2], [201.25830078125, 184.09994506835938, 1]] 

回答

3

嘗試

centers_x = [np.mean([q[0] for q in coordinates if q[-1]==n]) for n in range(3)]