上下文:我有两个大小不等的列表names
拥有家庭成员的名字chores
拥有更长的家务清单。我正在编写一个程序,随机将每个家务分配给一个家庭成员,这样每个人都可以得到相同数量的家务(或者至少+1/-1)。我想到了一些可能的方法,至少在理论上是这样。一种方法是简单地洗牌chores
列表,将列表均匀地分割成n
个新列表,并将其中一个较小的列表分配给每个家庭成员。我还可以循环浏览家务清单,在每次通过时为每个家庭成员分配家务,直到所有家务都分配给一个家庭成员
我很难找到具体的操作或例子来帮助解决这个问题;是否有一个具体的工作流程我应该考虑?p>
Tags:
从pakpe的答案中窃取的设置:
解决方案1,平均分配家务:
样本结果:
解决方案2,可能稍微简单但不均匀(在他们更改问题之前发布):
样本结果:
(第一次尝试,艾希礼真的很幸运。)
这里有一个方法:
如果您希望分配所有杂务,而不希望重复杂务,以下是一个解决方案:
您可以使用
zip
+cycle
或zip_longest
将人与家务配对,这取决于您的家务活是少还是人少。如果你的家务活比人多,这仍然会创建一个所有人的数据框架,有些人的家务活是None
现在你可以用
pandas
做任何你想做的事情,比如聚合到一个列表相关问题 更多 >
编程相关推荐