首页 > 解决方案 > 使用 Python 的分发队列

问题描述

也许有人可以帮助我或给我一盏灯。我有一个人名列表。示例:“Saulo”、“Maria”、“Fernando”

在列表完成之前,我需要在这些人之间创建自动分配而不重复一个人。

使用 Python shuffle,不确定结果是否总是随机的。

import random

mylist = ["Saulo", "Maria", "Fernando"]
random.shuffle(mylist)

示例:如果 Saulo 收到一件物品,只有在 Maria 和 Fernando 也收到它时,他才会再次收到它。

想法?

标签: pythonrandom

解决方案


我不认为洗牌真的是问题的一部分。你可以做一个循环索引

mylist = ["Saulo", "Maria", "Fernando"]
i = 0
l = len(mylist) 
while i < 10:
    print(f'Give item to {mylist[i % l]}")
    i += 1

如果要防止重复,请使用集合而不是列表


推荐阅读