def chat(**kwargs): opt = Config() for k, v in kwargs.items(): #设置参数 setattr(opt, k, v) searcher, sos, eos, unknown, word2ix, ix2word = train_eval.test(opt) if os.path.isfile(opt.corpus_data_path) == False: preprocess() while (1): input_sentence = input('BuaaSoft > ') if input_sentence == 'q' or input_sentence == 'quit' or input_sentence == 'exit': break if opt.use_QA_first: query_res = QA_test.match(input_sentence) if (query_res == tuple()): output_words = train_eval.output_answer( input_sentence, searcher, sos, eos, unknown, opt, word2ix, ix2word) else: output_words = "您是不是要找以下问题: " + query_res[ 1] + ',您可以尝试这样: ' + query_res[2] else: output_words = train_eval.output_answer(input_sentence, searcher, sos, eos, unknown, opt, word2ix, ix2word) print('BOT > ', output_words) QA_test.conn.close()
def reply(): opt = Config() # for k, v in kwargs.items(): #设置参数 # setattr(opt, k, v) searcher, sos, eos, unknown, word2ix, ix2word = train_eval.test(opt) if os.path.isfile(opt.corpus_data_path) == False: preprocess() input_sentence = request.form['msg'] #if input_sentence == 'q' or input_sentence == 'quit' or input_sentence == 'exit': break if opt.use_QA_first: query_res = QA_test.match(input_sentence) if (query_res == tuple()): output_words = train_eval.output_answer(input_sentence, searcher, sos, eos, unknown, opt, word2ix, ix2word) else: output_words = "您是不是要找以下问题: " + query_res[ 1] + ',您可以尝试这样: ' + query_res[2] else: output_words = train_eval.output_answer(input_sentence, searcher, sos, eos, unknown, opt, word2ix, ix2word) print('BOT > ', output_words) return jsonify({'text': output_words})
def chat(**kwargs): opt = Config() for k, v in kwargs.items(): #设置参数 setattr(opt, k, v) searcher, sos, eos, unknown, word2ix, ix2word = train_eval.test(opt) if os.path.isfile(opt.corpus_data_path) == False: preprocess() while(1): input_sentence = input('Doragd > ') if input_sentence == 'q' or input_sentence == 'quit' or input_sentence == 'exit': break output_words = train_eval.output_answer(input_sentence, searcher, sos, eos, unknown, opt, word2ix, ix2word) print('BOT > ',output_words)
def exportgrades(sy, sec, qt): #Finish this up by creating a notepad file in a folder school_year = sy #input(r'School Year:') section = sec #input(r'Section:') quarter = qt #(r'Quarter:') sheetname = qt gradearray = [] studentarray = [] directoryraw = os.getcwd() directory = directoryraw + r'\\Sheets\\' filetype = r".xlsx" sydirectory = directory + school_year + r'\\' + section + r'\\' exportfolder = directoryraw + r'\\Quarterly Grades\\' exfolder_exists = op.exists(exportfolder) if exfolder_exists: print("Export Folder Exists") else: print("Creating Export Folder") os.makedirs(exportfolder) with open(sydirectory + 'Number of Students and Activities.csv', 'rt') as f: data = csv.DictReader(f) for row in data: noStuds = row['No. of Students'] noStuds = int(noStuds) with open(sydirectory + 'Number of Students and Activities.csv', 'rt') as f: data = csv.DictReader(f) for row in data: noPT = row['No. of PT'] noPT = int(noPT) with open(sydirectory + 'Number of Students and Activities.csv', 'rt') as f: data = csv.DictReader(f) for row in data: noWT = row['No. of WT'] noWT = int(noWT) filedestination = sydirectory + section + filetype file_exists = op.isfile(filedestination) wb = Workbook() wb = load_workbook(filedestination) sheet = wb[sheetname] noPT = noPT+1 noWT = noWT+1 noStuds = noStuds+1 def getgrades(): i = 1 studentgradesPT = [] studentgradesWT = [] highestPT = [] highestWT = [] while i < noPT: gradingptcellvalue = sheet.cell(row = x+2, column = i+1).value studentgradesPT.append(gradingptcellvalue) i = i + 1 i = 1 while i < noWT: gradingwtcellvalue = sheet.cell(row = x+2, column = i+11).value studentgradesWT.append(gradingwtcellvalue) i = i + 1 i = 1 while i < noPT: gradingptcellvalue = sheet.cell(row = noStuds+2, column = i+1).value highestPT.append(gradingptcellvalue) i = i + 1 i = 1 while i < noWT: gradingwtcellvalue = sheet.cell(row = noStuds+2, column = i+11).value highestWT.append(gradingwtcellvalue) i = i + 1 weightedptavg = sum(studentgradesPT)/sum(highestPT) weightedptavg = weightedptavg * .100 weightedptavg = weightedptavg * .50 weightedwtavg = sum(studentgradesWT)/sum(highestWT) weightedwtavg = weightedwtavg * .100 weightedwtavg = weightedwtavg * .50 rawgrade = (weightedptavg*1000) + (weightedwtavg*1000) #Transmutation finalgrade = 0 if rawgrade == 100: finalgrade = 100 elif 98.40 <= rawgrade <= 99.99: finalgrade = 99 elif 96.80 <= rawgrade <= 98.39: finalgrade = 98 elif 95.20 <= rawgrade <= 96.79: finalgrade = 97 elif 93.60 <= rawgrade <= 95.19: finalgrade = 96 elif 92.00 <= rawgrade <= 93.59: finalgrade = 95 elif 90.40 <= rawgrade <= 91.99: finalgrade = 94 elif 88.80 <= rawgrade <= 90.39: finalgrade = 93 elif 87.20 <= rawgrade <= 88.79: finalgrade = 92 elif 85.60 <= rawgrade <= 87.19: finalgrade = 91 elif 84.00 <= rawgrade <= 85.59: finalgrade = 90 elif 82.40 <= rawgrade <= 83.99: finalgrade = 89 elif 80.80 <= rawgrade <= 82.39: finalgrade = 88 elif 79.20 <= rawgrade <= 80.79: finalgrade = 87 elif 77.60 <= rawgrade <= 79.19: finalgrade = 86 elif 76.00 <= rawgrade <= 77.59: finalgrade = 85 elif 74.40 <= rawgrade <= 75.99: finalgrade = 84 elif 72.80 <= rawgrade <= 74.39: finalgrade = 83 elif 71.20 <= rawgrade <= 72.79: finalgrade = 82 elif 69.60 <= rawgrade <= 71.19: finalgrade = 81 elif 68.00 <= rawgrade <= 69.59: finalgrade = 80 elif 66.40 <= rawgrade <= 67.99: finalgrade = 79 elif 64.80 <= rawgrade <= 66.39: finalgrade = 78 elif 63.20 <= rawgrade <= 64.79: finalgrade = 77 elif 61.60 <= rawgrade <= 63.19: finalgrade = 76 elif 60.00 <= rawgrade <= 61.59: finalgrade = 75 elif 56.00 <= rawgrade <= 59.99: finalgrade = 74 elif 52.00 <= rawgrade <= 55.99: finalgrade = 73 elif 48.00 <= rawgrade <= 51.99: finalgrade = 72 elif 44.00 <= rawgrade <= 47.99: finalgrade = 71 elif 40.00 <= rawgrade <= 43.99: finalgrade = 70 elif 36.00 <= rawgrade <= 39.99: finalgrade = 69 elif 32.00 <= rawgrade <= 35.99: finalgrade = 68 elif 28.00 <= rawgrade <= 31.99: finalgrade = 67 elif 24.00 <= rawgrade <= 27.99: finalgrade = 66 elif 20.00 <= rawgrade <= 23.99: finalgrade = 65 elif 16.00 <= rawgrade <= 19.99: finalgrade = 64 elif 12.00 <= rawgrade <= 15.99: finalgrade = 63 elif 8.00 <= rawgrade <= 11.99: finalgrade = 62 elif 4.00 <= rawgrade <= 7.99: finalgrade = 61 elif 0 <= rawgrade <= 3.99: finalgrade = 60 else: print("Raw grade does not exist in transmutation database") return finalgrade # if file_exists: x = 1 textfilename = exportfolder+section+"_"+quarter+"_"+school_year while x < noStuds: qtgradetextfile = open(textfilename+".txt","a+") student = sheet.cell(row = x+2, column = 1).value studandgrade = "Student: " + student + " | " + " Quarterly Grade: " + str(getgrades()) studentarray.append(student) gradearray.append(str(getgrades())) qtgradetextfile.write(str(studandgrade)) qtgradetextfile.write("\n") print(studandgrade) qtgradetextfile.close() x = x + 1 with open(textfilename+".csv", 'w', newline='') as file: fieldnames = ['Student_Names', 'Quarterly_Grades'] writer = csv.DictWriter(file, fieldnames=fieldnames) writer.writeheader() for x in range(noStuds-1): student = studentarray[x] grade = gradearray[x] writer.writerow({'Student_Names': student, 'Quarterly_Grades':grade}) else: print("This directory does not exist") dpp.preprocess(school_year, section, quarter)