如何在Python中加权队列?

时间:2017-09-11 09:39:53

标签: python queue weighted

我在python中有字典列表,另一个变量指定要在第一个列表项之间拆分的项目总数。

listA= [ {'name': 'one', 'priority': 3 }, {'name': 'two', 'priority': 6 }, {'name': 'three', 'priority': 1 }  ]

items_to_split= 20

我正在尝试找到一种方法,如何根据优先级将items_to_split中的适当数量的项目分配给listA中的项目。第一个列表中的项目数量可能是多种多样的。项目优先级越高,他得到的项目就越多。在这个例子中,我正在寻找这样的结果:(示例情况是理想的,因为除法后没有剩余)

one: 6 two: 12 three: 2

one one one one one one two two two two two two two two two two two two three three
我计算了每个优先级点的权重 - 20 /(3 + 6 + 1)= 2,然后将项目的优先级乘以该数字。
有没有办法如何使用队列或其他方法在python中进行智能化? 谢谢

0 个答案:

没有答案