import random
# 排序;defsort(arr):for i inrange(0,len(arr)-1,1):for j inrange(i +1,len(arr),1):if arr[i]> arr[j]:
temp = arr[i]
arr[i]= arr[j]
arr[j]= temp
return arr
#指定组数和随机个数与所有组之间不重复的指定个数defrand_appiont_group(group_counts,all_counts,num):#参数1:group_counts 分几个组#参数2:all_counts(大于1的整数类型),要随机的总个数#参数3:num 分组列表,每个组有多少个随机数,例如:[8,10,10]
offices =[]for n inrange(0,group_counts,1):
offices.append([])#创建组数的空列表for i inrange(0,len(offices),1):whilelen(offices[i])<= num[i]:#循环不重复的数字
index = random.randint(1, all_counts)# 随机数
counts =[]for j inrange(0,len(offices),1):
count = offices[j].count(index)#查找随机出来的数字(index)有没有在offices下的全部组里出现过
counts.append(count)
x =0for k in counts:#循环随机数所有出现过的次数
x = x + k
if x ==1:passelse:
offices[i].append(index)#如果在offices[i]列表里没有出现过,那么就写入到offices[i]中
offices[i]= sort(offices[i])print(offices)
rand_appiont_group(3,31,[9,9,10])