我在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中进行智能化?
谢谢