コード例 #1
0
 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)
コード例 #2
0
ファイル: Frames.py プロジェクト: jasperlin451/pilot
 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
     )
コード例 #3
0
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