编程python实现:根据输入的小组人数和名单随机分组
时间: 2024-03-11 16:43:26 浏览: 124
Python编写的随机分组小程序
可以使用Python内置的random模块来实现随机分组。以下是一个示例代码,其中包含根据小组人数和名单随机分组的函数:
```python
import random
def random_grouping(num_groups, name_list):
# 计算每组的人数
group_size = len(name_list) // num_groups
# 洗牌,打乱名单顺序
random.shuffle(name_list)
# 分组
groups = [name_list[i:i+group_size] for i in range(0, len(name_list), group_size)]
# 将多余的人随机分到各组中
for i in range(len(name_list) % num_groups):
groups[i].append(name_list[-i-1])
return groups
```
使用示例:
```python
name_list = ['Tom', 'Jerry', 'Mike', 'John', 'Lucy', 'Amy', 'Jack', 'Kate', 'Bob', 'Alice', 'Lisa']
num_groups = 3
groups = random_grouping(num_groups, name_list)
for i in range(num_groups):
print(f"Group {i+1}: {groups[i]}")
```
输出结果可能如下:
```
Group 1: ['Lucy', 'Mike', 'Bob', 'Jack']
Group 2: ['Alice', 'Jerry', 'John', 'Kate']
Group 3: ['Tom', 'Lisa', 'Amy']
```
其中每组的人数都尽可能接近,并且多余的人随机分配到各组中。
阅读全文