Python排课表,Python排班
从随机导入洗牌
从随机进口样品中
将数组作为铭牌导入
导入xlwt
name_list=[田,兰,刘,杨,余,唐,于,莫,吴,乔,敏,童,杜,王,豆,黄,苹,磊,曼,陈,皱,谢,果,汪,麒]名称列表大小=len(名称列表)
打印(总共有{}个人。格式(名称列表大小))
#将名称列表转换为集合(名称列表)
# unique _ list=[]#将成员存储到(油)密度指示控制器(Density Indicating Controller的缩写)
#dic={}
def get_matrix():
而1:
row_1=sample(name_list,5)
row_2=sample(name_list,5)
row_3=sample(name_list,5)
row_4=sample(name_list,5)
row_5=sample(name_list,5)
row_6=sample(name_list,5)
row_7=sample(name_list,5)
row_8=sample(name_list,5)
row_9=sample(name_list,5)
row_10=sample(name_list,5)
#获取10x5数组的矩阵
matrix=np.array([row_1,row_2,row_3,row_4,row_5,row_6,row_7,row_8,row_9,row_10])
col_1=matrix[:0] col_2=matrix[:1] col_3=matrix[:2] col_4=matrix[:3] col_5=matrix[:4]
set_col_1=set(col_1)
set_col_2=set(col_2)
set_col_3=set(col_3)
set_col_4=set(col_4)
set_col_5=set(col_5)
#检查是否所有人都已在列表中
对于范围(10)中的I,unique_list=[]:
对于范围(5)中的j:
如果矩阵[i][j]不在唯一列表中:
唯一列表附加(矩阵[i][j])
#计算每个成员的重复次数
matrix _ list _ all _ num=[]for h in range(10):
对于范围(5)中的k:
矩阵_列表_全部_数量。append(矩阵[h][k])
dic={}
对于唯一列表中的项目:
DIC。更新({ item:matrix _ list _ all _ num。计数(项目)})
#生成超过保存表
book _ name _ xls= schedule _ shift。xls
静态密钥列表=列表(驾驶员信息中心)
静态值列表=列表(DIC。values())
如果len(唯一列表)==len(名称列表)和len(设置列1)==len(列1)和len(设置列2)==len(列2)和len(设置列3)==len(列3)和len(设置列4)==len(列4)和len(set_col_5)==len(col_5):
打印("所有人都已安排\n”)
打印(矩阵)
#生成超过
book=xlwt .工作簿()
#sheet.write(0,1,星期六)
i=1
对于矩阵中的数据:
对于范围内的j(len(data)):
i=i 1
book.save(book_name_xls)
j=13
对于静态关键字列表中的项目:
j=j 1
k=13
对于静态值列表中的项目1:
k=k 1
book.save(book_name_xls)
打印( \n )
打印(每个成员的重复时间\n )
打印(驾驶员信息中心)
破裂
返回矩阵
get_matrix()
历史中提交的图片或压缩文件
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。