def runCombos(self): starttime=time.time() names = [] classSize=[] stu = [] for i in self.p3.names: names.append(i.get()) for z in self.p4.studentsper: stu.append(int(z.get())) roomList, roomCount = importRooms.scan(self.p3.roomSheet.get()) combos = [] sizes=[] y = 0 for x,studentsper in zip(self.returns,stu): combos.append(combinations.combinations(x[1], int(self.p4.entries[y].get()) ,x[0] ,roomCount,studentsper)) sizes.append(int(self.p4.entries[y].get())) y+=1 for printer in combos: print(len(printer)) finalRoomCombo,finalStudentAssignments,LeaderDays=sort.Sorter([m[0] for m in self.returns],combos,names,sizes,roomList,[n[1] for n in self.returns],stu) print(time.time()-starttime) #assign the rooms for subj,subject in zip(finalRoomCombo,names): for group in subj: roomList[group].taken=True leaderAssignments,leaderRooms=assign.assignLeaders(self.leaderData,LeaderDays,roomList,sizes,finalRoomCombo) #print(time.time()-starttime) #f2=open('variables2.txt','wb') #pickle.dump([roomList,leaderAssignments,leaderRooms]) #assign everything data=[] for n in self.returns: data.append(n) assignEverything.assign(roomList,finalRoomCombo,finalStudentAssignments,leaderRooms,leaderAssignments,names)
def runCombos(self): starttime = time.time() names = [] classSize = [] stu = [] for i in self.p3.names: names.append(i.get()) for z in self.p4.studentsper: stu.append(int(z.get())) roomList, roomCount = importRooms.scan(self.p3.roomSheet.get()) combos = [] sizes = [] y = 0 for x, studentsper in zip(self.returns, stu): combos.append(combinations.combinations(x[1], int(self.p4.entries[y].get()), x[0], roomCount, studentsper)) sizes.append(int(self.p4.entries[y].get())) y += 1 for printer in combos: print(len(printer)) finalRoomCombo, finalStudentAssignments, LeaderDays = sort.Sorter( [m[0] for m in self.returns], combos, names, sizes, roomList, [n[1] for n in self.returns], stu ) print(time.time() - starttime) # assign the rooms for subj, subject in zip(finalRoomCombo, names): for group in subj: roomList[group].taken = True leaderAssignments, leaderRooms = assign.assignLeaders( self.leaderData, LeaderDays, roomList, sizes, finalRoomCombo ) # print(time.time()-starttime) # f2=open('variables2.txt','wb') # pickle.dump([roomList,leaderAssignments,leaderRooms]) # assign everything data = [] for n in self.returns: data.append(n) assignEverything.assign( roomList, finalRoomCombo, finalStudentAssignments, leaderRooms, leaderAssignments, names )
import time #import excel file, print data starttime=time.time() import studentImport blah=[] datas=[] data,times = studentImport.scan('/home/jasper/pilot/data.xls','Calc II') data2,times2 = studentImport.scan('/home/jasper/pilot/data2.xls','Chem I') import importRooms rooms,roomCount=importRooms.scan('/home/jasper/pilot/rooms.xlsx') blah.append(times) blah.append(times2) datas.append(data) datas.append(data2) import combinations combos=[] combos.append(combinations.combinations(blah[0],8,data,roomCount)) combos.append(combinations.combinations(blah[1],10,data2,roomCount)) print(len(combos[0])) print(len(combos[1])) import sort finalCombo,finalAssignments,finalWaitList=sort.Sorter(datas,combos,['Calc II','Chem I'],[8,10],rooms,blah) print(len(finalCombo)) #determine which finalCombo fits the leader availability the best #leaderData=leaderImport.scan() #import assign