基于python中第二个数组索引值的一个数组分离

时间:2017-07-14 21:21:13

标签: python arrays sorting

我在python中有跟随扭矩和速度数组。我的问题是如何获得给定速度的相应扭矩值(每个扭矩指数对应于每个速度指数)。例如,速度1将具有扭矩10,30,50和速度7将具有扭矩20等。

扭矩= [10,20,30,40,50]

速度= [1,7,1,8,1]

我尝试使用Tuple跟随代码和输出,但我无法将Torques分开给定的速度。例如,1速 Trq = [10,30,50] 。非常感谢帮助。

Trq_Speed = list(zip(Speed, Torque))
Trq_Speed.sort(key=lambda x: x[0])
print(Trq_Speed)

[(10,1),(30,1),(50,1),(20,7),(40,8)]

1 个答案:

答案 0 :(得分:0)

使用enumeratedefaultdict

from collections import defaultdict
d = defaultdict(list)
Torque = [10, 20, 30, 40, 50]
Speed = [1, 7, 1, 8, 1]
for i, e in enumerate(Speed):
    d[e].append(Torque[i])
d

返回:

defaultdict(list, {1: [10, 30, 50], 7: [20], 8: [40]})