def cmd_school_add( self, item, args, rawline ):
    """-n <name>|-i||add a new school. Argument -n is to pass a name and -i for interactive mode"""
    parser = argparse.ArgumentParser( prog = "school add", description = self.cmd_school_add.__doc__.split( "||" )[1] )
    parser.add_argument( "-n", "--name", help = "set the name of the new school" )
    parser.add_argument( "-i", "--interactive", action = "store_true", help = "use the interactive mode" )

    try:
      parsed_args = parser.parse_args( args.split( " " ))
      name = ""
      save = True
      if parsed_args.interactive:
        try:
          while name == "":
            name = input( "Name: " )
          save = input( "Do you want to save ([y]/n)? " )
          save = (save == "y" or save == "")
        except KeyboardInterrupt:
          save = False
          print( "" ) # To break down prompt to a new line
      elif parsed_args.name != "" and parsed_args.name is not None:
        name = parsed_args.name
      else:
        save = False
      if save:
        school = School( self._connection )
        school.Name = name
        if school.Insert( ):
          cf.out.bold_green( "School with name `{}` has been successfully saved!".format( name ))
          self._UpdateCDCommand( )
        else:
          cf.out.bold_red( "An error occured during the insert action of school with name `{}`".format( name ))
    except SystemExit:       # Do not exit cli if an error occured in parse_args
      pass
Exemple #2
0
def admin():
    data = request.get_json()
    if data:
        if data['method'] == 'refill':
            School.refill()
        if data['method'] == 'delete_all_users':
            MongoDataBase.delete_all_users()
        if data['method'] == 'fill_random':
            MongoDataBase.fill_random()
        if data['method'] == 'sort_pk':
            MongoDataBase.sort_pk('hello')
    return render_template('admin.html')
Exemple #3
0
def main():
    """Shows basic usage of the Gmail API.
    Lists the user's Gmail labels.
    """
    creds = None
    # The file token.json stores the user's access and refresh tokens, and is
    # created automatically when the authorization flow completes for the first
    # time.
    if os.path.exists('token.json'):
        creds = Credentials.from_authorized_user_file('token.json', SCOPES)
    # If there are no (valid) credentials available, let the user log in.
    if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
            creds.refresh(Request())
        else:
            flow = InstalledAppFlow.from_client_secrets_file(
                'credentials.json', SCOPES)
            creds = flow.run_local_server(port=0)
        # Save the credentials for the next run
        with open('token.json', 'w') as token:
            token.write(creds.to_json())

    service = build('gmail', 'v1', credentials=creds)

    #Class calls
    email = Email(service)
    inbox = email.batchEmails()  #list

    school = School()
    assignments = school.getAssignments()  #list

    weather = Weather()
    today = weather.getWeather()  #list

    # -----------------------------
    # TKINTER CODE BELOW THIS POINT
    # -----------------------------

    window = tk.Tk()
    #window.geometry('1280x1024')
    window.attributes('-fullscreen', True)
    window.configure(bg='black')

    #Close on escape key
    def close(event):
        window.withdraw()  # if you want to bring it back
        sys.exit()  # if you want to exit the entire thing

    window.bind('<Escape>', close)
    window.mainloop()
Exemple #4
0
    def __init__(self, dt=0.25, trafficWeight=1):
        """ The default constructor for the Model """

        # self.test_agent = Agent.Agent()
        self.trafficWeight = trafficWeight

        self.gate = Gate.Gate()

        self.campus_way_road = Road.Road(2, 2, 3)

        self.south_garage = Garage.Garage("South Garage",
                                          num_spot=771,
                                          num_carpool_spot=23,
                                          num_handicapped_spot=20,
                                          num_bike_spot=12,
                                          garage_width=31)

        self.school = School.School()

        self.num_days = 30
        self.dt = 0.15

        self.plot_figure = None
        self.plot_axis = None
        self.plot_image = None

        #Tracks utilization per time step.
        self.utilization = []
Exemple #5
0
    def listSchool(cls):
        query_school_info_sql = "SELECT * FROM school_info"
        raw = super().readFromDB(query_school_info_sql)

        data = {}
        for d in raw:
            data[d[1]] = School.School(d[0], d[1])
        return data
 def createSchools(self):
     for s in range(self.N_SCHOOL):
         self.schools.append(School())
Exemple #7
0
                            studentMatrix[x][4], studentMatrix[x][5],
                            studentMatrix[x][6], studentMatrix[x][7],
                            studentMatrix[x][8], studentMatrix[x][9],
                            studentMatrix[x][10], bussing))
        studentObjects[x].distanceMatrixPosition = x
        studentObjects[x].placementName = studentMatrix[x][12]
        studentObjects[x].timeOfDay = studentMatrix[x][13]
    x += 1

#create schools from file
x = 0
while (x < len(schoolMatrix)):
    schoolObjects.append(
        School.School(schoolMatrix[x][0], schoolMatrix[x][1],
                      schoolMatrix[x][2], schoolMatrix[x][3],
                      schoolMatrix[x][4], schoolMatrix[x][5],
                      schoolMatrix[x][6], schoolMatrix[x][7],
                      schoolMatrix[x][8], schoolMatrix[x][9]))
    x += 1

#create routes from file
x = 0
while (x < len(routeMatrix)):
    routeObjects.append(
        Route.Route(routeMatrix[x][0], routeMatrix[x][1], routeMatrix[x][2]))
    x += 1

for e in studentObjects:
    for x in schoolObjects:
        if x.name == e.placementName:
            e.school = x
Exemple #8
0
# Following are required for custom functions Task 1,2
def meanie(x):
    return np.mean(x, axis=1)


def dot_with_11(x):
    return np.dot(x, np.array([0.5, 0.5]))


if __name__ == '__main__':
    learning_phase = False
    classifier_file_name = 'ClassifierFile.pkl'
    if os.path.isfile(classifier_file_name):
        Main_C1 = pickle.load(open(classifier_file_name, 'r'))
    else:
        Main_C1 = SimpleClassifierBank(max_width=2000,
                                       input_width=1500,
                                       height=500)
    # Learn or not learn?
    if learning_phase:
        School.class_digital_logic(Main_C1)
        School.simple_custom_fitting_class(Main_C1)
    # Main_C1.fit_custom_fx(np.mean,input_width=1500, output_width=1, task_name='np.mean')
    yp = Main_C1.predict(np.random.randn(8, 22))
    print 'Predicted value is ', yp
    # Main_C1.remove_classifier('np.mean')

    Main_C1.status()
    pickle.dump(Main_C1, open(classifier_file_name, 'w'))
Exemple #9
0
# -*- coding: utf-8 -*-
"""
Created on Sat May  9 21:01:12 2020

@author: HaoranLi
"""

import School

#实例化数据库课程
dta=School.Course('001','数据库技术与应用','李秀',3,50)
#读取学生列表并让其选课
students=[]
k=0
filename='学生列表.txt'
with open(filename) as file_object:
    for line in file_object:
        s=line.split()
        sname=s[0]
        sno=s[1]
        students.append(School.Student(sname,sno))
        students[k].select_course(dta)
        k+=1
#抽签
dta.draw_lots()
#输出课程内和候选学生名单
print("课程内学生名单为:")
for i in range(len(dta.selectionStudents)):
    print(dta.selectionStudents[i].ID)
print("队列学生名单为:")
for j in range(len(dta.waitingStudents)):
Exemple #10
0
def rs(obj_name):
    with open(obj_name, 'rb') as ft:
        obj_name = pickle.load(ft)
    return obj_name


# cs('st1')
st1 = rs('st1')
# cs('st2')
st2 = rs('st2')

list_class1_obj = [
    python1, python2, python3, linux1, linux2, linux3, go1, go2, go3
]

sb = School.School('中日友好大学', '北京')
sh = School.School('韩国大学', '上海')

sb.hire_teacher(t1, linux1, linux2, linux3)
sb.hire_teacher(t2, python1, python2, python3)
sh.hire_teacher(t3, go1, go2, go3)

sb.addCourse(clinux)
sb.addCourse(cpython)
sh.addCourse(cgo)

sb.addclass1(python1)
sb.addclass1(python2)
# print('--------start')
# print(python1.course_obj)
# print('--------stop')
Exemple #11
0
#make master distance matrix
#this will be replaced by code that builds the distance matrix based on geocode data
masterDistanceMatrix = cl.metricCSVtoMatrix('durations_with_schools.csv')



#create arrays to store the student and school objects
studentObjects = []
schoolObjects = []

#create students from file
#set master distance matrix index as well. That will be changed later.
#create schools from file
x = 0
while (x < len(schoolMatrix)):
    schoolObjects.append(School.School(schoolMatrix[x][0], schoolMatrix[x][1], schoolMatrix[x][2], schoolMatrix[x][3], schoolMatrix[x][4], schoolMatrix[x][5],
                                  schoolMatrix[x][6], schoolMatrix[x][7], schoolMatrix[x][8]))
    x += 1

x = 0
while (x < len(studentMatrix)):
    studentObjects.append(Student.Student(studentMatrix[x][0], studentMatrix[x][1], studentMatrix[x][2], studentMatrix[x][3], studentMatrix[x][4], studentMatrix[x][5],
                                     studentMatrix[x][6], studentMatrix[x][7], studentMatrix[x][8], studentMatrix[x][9], studentMatrix[x][10], studentMatrix[x][11]))
    studentObjects[x].distanceMatrixPosition = x
    if not np.isnan(studentMatrix[x][13]):
        studentObjects[x].busRoute = studentMatrix[x][13]
        studentObjects[x].busTime= Time.Time(studentMatrix[x][12])
        stuSchool = [i for i in schoolObjects if i.name == studentMatrix[x][14]]
        if len(stuSchool)>0:
            studentObjects[x].school = stuSchool[0]
            studentObjects[x].placementId = stuSchool[0].id
            studentObjects[x].placementName = stuSchool[0].name
Exemple #12
0
def main():

    the_school = School()
    try:
        the_school.populate_student_array("students.txt")
    except (FileNotFoundError):
        print("File was not found.\n")
        return

    search_val = ""

    while (True):

        command = prompt()
        values = command.split()

        #Quit
        if (values[0] == "Q" or values[0] == "Quit"):
            break
        #Student
        elif (values[0] == "S" or values[0] == "Student"):
            if (len(values) == 3):
                if (values[2] == "B" or values[2] == "Bus"):
                    the_school.search_student_bus(values[1])
                else:
                    print("\n" + values[2] + " is not a valid command\n")
            else:
                the_school.search('S', values[1])
        #Teacher
        elif (values[0] == "T" or values[0] == "Teacher"):
            the_school.search('T', values[1])
        #Bus
        elif (values[0] == "B" or values[0] == "Bus"):
            the_school.search('B', values[1])
        #Grade
        elif (values[0] == "G" or values[0] == "Grade"):
            if (len(values) == 3):
                if (values[2] == "H" or values[2] == "L" or values[2] == "High"
                        or values[2] == "Low"):
                    the_school.grade_search(values[1], values[2])
                else:
                    print("\n" + values[2] + " is not a valid command\n")
            else:
                the_school.search('G', values[1])
        #Average
        elif (values[0] == "A" or values[0] == "Average"):
            the_school.search('A', values[1])
        #Info
        elif (values[0] == "I" or values[0] == "Info"):
            the_school.grade_info()
    return 1 / (1 + math.exp(-10*x))


# Following are required for custom functions Task 1,2
def meanie(x):
    return np.mean(x, axis=1)


def dot_with_11(x):
    return np.dot(x, np.array([0.5, 0.5]))


if __name__ == '__main__':
    learning_phase = False
    classifier_file_name = 'ClassifierFile.pkl'
    if os.path.isfile(classifier_file_name):
        Main_C1 = pickle.load(open(classifier_file_name, 'r'))
    else:
        Main_C1 = SimpleClassifierBank(max_width=2000, input_width=1500, height=500)
    # Learn or not learn?
    if learning_phase:
        School.class_digital_logic(Main_C1)
        School.simple_custom_fitting_class(Main_C1)
    # Main_C1.fit_custom_fx(np.mean,input_width=1500, output_width=1, task_name='np.mean')
    yp = Main_C1.predict(np.random.randn(8, 22))
    print 'Predicted value is ', yp
    # Main_C1.remove_classifier('np.mean')

    Main_C1.status()
    pickle.dump(Main_C1, open(classifier_file_name, 'w'))
Exemple #14
0
def main():
    SchoolObj = School("School1", 1, "Address1", "State1", "City1", 55)
    SchoolObj.getSchoolDetails()
Exemple #15
0
            # plt.subplot(2, 2, i + 1)
            # plt.subplots_adjust(wspace=0.4, hspace=0.4)

            Z = clf.predict_last(np.c_[xx.ravel(), yy.ravel()])

            # Put the result into a color plot
            Z = Z.reshape(xx.shape)
            plt.contourf(xx, yy, Z, cmap='gray', alpha=0.8)

            # Plot also the training points
            plt.scatter(X[:, 0], X[:, 1], c=y, cmap=plt.cm.Paired)
            plt.xlim(xx.min(), xx.max())
            plt.ylim(yy.min(), yy.max())
            plt.title('Classifier ' + str(len(self.classifiers_list)))
        plt.show()


# Global functions
# Reason for having 10 sigmoid is to get sharper distinction.
def sigmoid_10(x):
    return 1 / (1 + math.exp(-10 * x))


if __name__ == '__main__':
    Main_C1 = RememberingVisualMachine(input_width=2)
    School.random_linear_trainer(Main_C1, stages=20)
    School.random_linear_trainer2(Main_C1, stages=20)
    Main_C1.status(show_graph=True, list_classifier_name=False)
    School.growing_complex_trainer(Main_C1)
    Main_C1.status(show_graph=True, list_classifier_name=False)
            # plt.subplot(2, 2, i + 1)
            # plt.subplots_adjust(wspace=0.4, hspace=0.4)

            Z = clf.predict_last(np.c_[xx.ravel(), yy.ravel()])

            # Put the result into a color plot
            Z = Z.reshape(xx.shape)
            plt.contourf(xx, yy, Z, cmap='gray', alpha=0.8)

            # Plot also the training points
            plt.scatter(X[:, 0], X[:, 1], c=y, cmap=plt.cm.Paired)
            plt.xlim(xx.min(), xx.max())
            plt.ylim(yy.min(), yy.max())
            plt.title('Classifier ' + str(len(self.classifiers_list)))
        plt.show()


# Global functions
# Reason for having 10 sigmoid is to get sharper distinction.
def sigmoid_10(x):
    return 1 / (1 + math.exp(-10 * x))


if __name__ == '__main__':
    Main_C1 = RememberingVisualMachine(input_width=2)
    School.random_linear_trainer(Main_C1, stages=20)
    School.random_linear_trainer2(Main_C1, stages=20)
    Main_C1.status(show_graph=True, list_classifier_name=False)
    School.growing_complex_trainer(Main_C1)
    Main_C1.status(show_graph=True, list_classifier_name=False)
Exemple #17
0
import School
import pickle
names = ['유광무1','유광무2','유광무3','유광무4','유광무5']
kor = [23,45,34,76,98]
math = [23,45,34,76,98]
python = [23,45,34,76,98]
students = []

for i in range(5):
    var = School.Student(names[i],i,kor[i],math[i],python[i])
    students.append(var)
f = open('나는_오이가_싫어요\data.bin','wb')
pickle.dump(students,f)
print('나는 오이가 싫어요')
Exemple #18
0
import School
from ConstantsAndEnum import *
import jsonpickle

s = School.school("朝阳一小",District.ChaoYang,ClassType.JuniorSchool)
# s = School.school()
jsonStr = s.to_JSON()

print(jsonStr)

s1 = jsonpickle.decode(jsonStr)

assert s1.Name == s.Name
assert s1.SchoolType == s.SchoolType

print(s1.Name)
print(s.Name)