随机分组python代码
时间: 2024-09-10 07:17:06 浏览: 99
随机分组是一种将一组元素随机分配到若干个小组中的方法,可以使用Python的标准库中的`random`模块来实现。以下是一个简单的示例代码,用于将列表中的元素随机分成指定数量的小组:
```python
import random
def random_grouping(items, num_groups):
# 打乱列表顺序,以便随机分配
random.shuffle(items)
# 每个小组的平均大小
group_size = len(items) // num_groups
# 需要额外分配的小组数量
extra = len(items) % num_groups
groups = []
start = 0
for i in range(num_groups):
# 计算当前小组的大小,前extra个小组多分配一个元素
end = start + group_size + (1 if i < extra else 0)
# 切片当前小组并加入到分组列表中
groups.append(items[start:end])
start = end
return groups
# 示例使用
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
num_of_groups = 3
groups = random_grouping(my_list, num_of_groups)
print(groups)
```
请注意,这个代码示例在每个小组的元素数量分配上尽量平均,但由于元素数量与小组数量的整除关系,可能存在一些小组的元素数量比其他小组多一个的情况。
阅读全文