def pandim(args): if args.filename: fobj = open(args.filename, 'r') else: fobj = sys.stdin buf = [] IN_CODE = False IN_QUOTE = False for line in fobj: line = line.rstrip('\n') if line.startswith('\\'): option = re.search(r'\\(\w+)', line).group(1) if option == 'code': IN_CODE = True buf = [] continue elif option == 'endcode': line = yate.code(buf) IN_CODE = False elif option == 'quote': IN_QUOTE = True buf = [] continue elif option == 'endquote': line = yate.blockquote(buf) IN_QUOTE = False elif IN_CODE: buf.append(line) continue elif IN_QUOTE: buf.append(yate.para(line)) continue elif line.startswith('#'): npounds = re.match(r'#+', line).group(0) line = line.lstrip('#').lstrip(' ') line = yate.header(line, len(npounds)) elif line.startswith('>'): line = line.lstrip('>').lstrip(' ') line = yate.blockquote(yate.para(line)) elif not line: continue else: line = yate.para(line) print(line) if args.filename: fobj.close()
import cgitb import cgi import yate import athletemodel # 打开错误提示 cgitb.enable() # 获取数据 athletes = athletemodel.get_from_store() # 获取请求表单 form_data = cgi.FieldStorage() # 获取姓名 athlete_name = form_data["which_athlete"].value # 响应文件类型 print(yate.start_response()) # html头 print(yate.include_header("Coach Kelly's timing Data")) # 提示数据 print( yate.header("Athlete:" + athlete_name + ",DOB:" + athletes[athlete_name].dob)) # 打印数据集合 print(yate.u_list(athletes[athlete_name].top3)) # html尾 print( yate.include_footer({ "Home": "/index.html", "Select another athlete": "/cgi-bin/generate_list.py" }))
#!/usr/local/bin/python3 import cgi import athletemodel2 import yate import sys # 可在web页面上显示出错堆栈信息 import cgitb cgitb.enable() form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value athletes = athletemodel2.get_athlete_from_id(athlete_id) print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("Athlete:" + athletes['Name'] + ',Dob' + athletes['Dob'] + '.')) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athletes['top3'])) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
def main(): form_data = cgi.FieldStorage() print(yate.start_response()) print(yate.include_header('Estatísticas para Loterias do Brasil')) if not form_data: print(yate.start_form('', 'jogos.py')) print(yate.drop_box('Jogo: ', 'Jogos', {'Quina':'Quina', 'Mega-Sena': 'Mega-Sena', 'LotoFácil':'LotoFácil'}, 'Mega-Sena')) print(yate.drop_box('Estatística: ', 'Estat', { 'doze': 'Dezenas Mais Sorteadas', 'rule': 'Distribuição entre Pares e Impares', 'wors': 'Maior tempo sem ser sorteado', 'more': 'Mais Sorteado', 'aver': 'Média de tempo sem ser sorteado', 'sugs': 'Sugere números com melhor Escore Z', 'sugl': 'Sugere números menos sorteados recentemente', 'sugm': 'Sugere números sorteados recentemente', 'last': 'Última vez sorteado', 'unit': 'Unidades Mais Sorteadas'}, 'more')) print(yate.end_form('Enviar')) elif form_data.getvalue('Jogos') and form_data.getvalue('Estat'): jogo = form_data.getvalue('Jogos') estat = form_data.getvalue('Estat') if jogo == 'Quina': obj = QuinaStats('../data/D_QUINA.HTM') elif jogo == 'Mega-Sena': obj = SenaStats('../data/d_megasc.htm') elif jogo == 'LotoFácil': obj = LotoFacilStats('../data/D_LOTFAC.HTM') else: print(yate.para('Opção Inexistente')) print(yate.include_footer('© LotoEstat 2012')) return if form_data.getvalue('Estat') == 'more': print(yate.header('Números Mais Sorteados')) print(yate.para('Lista decrescente dos números mais sorteados da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.prepare_to_print('More', for_print=False) print(yate.start_tb(['Dezena ', ' Número de Vezes Sorteado'])) for each in to_print: print(yate.inner_tb([each[0],each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'rule': print(yate.header('Distribuição entre Pares e Impares')) print(yate.para('Combinação de pares e ímpares entre os números da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.print_rule_even_by_odd(for_print=False) print(yate.start_tb(['Dezenas Pares ', ' Dezenas Ímpares ', ' Número de Vezes Sorteado'])) p = re.compile('\d+') for each in to_print: even, odd = p.findall(each[0]) print(yate.inner_tb([even, odd, each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'unit': print(yate.header('Unidades Mais Sorteadas')) print(yate.para('Lista das Unidades mais Sorteadas dos Jogos da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.print_more_often_unit(for_print=False) print(yate.start_tb(['Dezenas terminadas em ', ' Número de Vezes Sorteado'])) p = re.compile('\d+') for each in to_print: unidade = p.findall(each[0]) print(yate.inner_tb([unidade[0], each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'doze': print(yate.header('Dezenas Mais Sorteadas')) print(yate.para('Lista das Dezenas mais Sorteadas dos Jogos da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.print_more_often_dozen(for_print=False) print(yate.start_tb(['Dezenas Começadas por ', ' Número de Vezes Sorteado'])) p = re.compile('\d+') for each in to_print: dezena = p.findall(each[0]) print(yate.inner_tb([dezena[0], each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'last': print(yate.header('Última vez Sorteado')) print(yate.para('A quanto tempo a dezena não é sorteada entre os números premiados da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.prepare_to_print('Last', for_print=False) print(yate.start_tb(['Dezena ', ' Tempo sem ser sorteada'])) for each in to_print: print(yate.inner_tb([each[0],each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'wors': print(yate.header('Maior tempo sem ser sorteado')) print(yate.para('Pior tempo de espera que um número aguardou para ser sorteado entre todos os sorteios da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.prepare_to_print('Worst', for_print=False) print(yate.start_tb(['Dezena ', ' Pior tempo sem ser sorteada'])) for each in to_print: print(yate.inner_tb([each[0],each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'aver': print(yate.header('Média de tempo sem ser sorteado')) print(yate.para('Tempo médio que um número leva até ser sorteado, obtidos à partir do histórico de resultados da ' + form_data.getvalue('Jogos') + '.')) to_print = obj.prepare_to_print('Average', for_print=False) print(yate.start_tb(['Dezena ', ' Média de espera entre dois sorteios'])) for each in to_print: print(yate.inner_tb([each[0],each[1]])) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'sugm': print(yate.header('Sugere números sorteados recentemente')) print(yate.para('Ordena os números da ' + form_data.getvalue('Jogos') + ' levando em conta as estatísticas individuais, favorecendo os números que saíram com mais frequencia e que foram sorteados recentemente.')) to_print = obj.suggest_num(method='Most Recently', for_print=False) if form_data.getvalue('Jogos') == 'Quina': dez_sug = 7 elif form_data.getvalue('Jogos') == 'Mega-Sena': dez_sug = 15 elif form_data.getvalue('Jogos') == 'LotoFácil': dez_sug = 15 cabecalho_tabela = [] for num in range(1, dez_sug + 1): cabecalho_tabela.append(str(num) + 'ª dezena') print(yate.start_tb(cabecalho_tabela)) lis = [] for each in to_print[:dez_sug]: lis.append(each[0]) print(yate.inner_tb(lis)) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'sugl': print(yate.header('Sugere números menos sorteados recentemente')) print(yate.para('Ordena os números da ' + form_data.getvalue('Jogos') + ' levando em conta as estatísticas individuais, favorecendo os números que saíram com mais frequencia e que estão a mais tempo sem serem sorteados.')) to_print = obj.suggest_num(method='Least Recently', for_print=False) if form_data.getvalue('Jogos') == 'Quina': dez_sug = 7 elif form_data.getvalue('Jogos') == 'Mega-Sena': dez_sug = 15 elif form_data.getvalue('Jogos') == 'LotoFácil': dez_sug = 15 cabecalho_tabela = [] for num in range(1, dez_sug + 1): cabecalho_tabela.append(str(num) + 'ª dezena') print(yate.start_tb(cabecalho_tabela)) lis = [] for each in to_print[:dez_sug]: lis.append(each[0]) print(yate.inner_tb(lis)) print(yate.end_tb()) elif form_data.getvalue('Estat') == 'sugs': print(yate.header('Sugere números com melhor escore padrão')) print(yate.para('Ordena os números da ' + form_data.getvalue('Jogos') + ' levando em conta o escore padrão de cada um, favorecendo os números com menor desvio padrão da média de tempo de espera para um número ser sorteado.')) to_print = obj.suggest_num(method='Score', for_print=False) if form_data.getvalue('Jogos') == 'Quina': dez_sug = 7 elif form_data.getvalue('Jogos') == 'Mega-Sena': dez_sug = 15 elif form_data.getvalue('Jogos') == 'LotoFácil': dez_sug = 15 cabecalho_tabela = [] for num in range(1, dez_sug + 1): cabecalho_tabela.append(str(num) + 'ª dezena') print(yate.start_tb(cabecalho_tabela)) lis = [] for each in to_print[:dez_sug]: lis.append(each[0]) print(yate.inner_tb(lis)) print(yate.end_tb()) print(yate.header('Atualizado em : %s', header_level=6) % obj.print_updated_data()) else : print(yate.para('Opção por Jogo ou Estatística não efetuada.')) print(yate.include_footer('© LotoEstat 2012'))
# -*- coding: utf-8 -*- # 生成游戏页面 import sys import yate,arithmetic_training_games # =================生成一个HTML页面================= print(yate.start_response()) print(yate.include_header('欢迎来到韦浩宇的算术运算训练营!')) # print(yate.start_form('arithmetic_training_games.py')) print(yate.para('即将开始算术训练!')) Numlist = [x for x in range(20)] ArtInstance = arithmetic_training_games.ArithmeticMode(Numlist,level= 2, OperatorList=['-']) while(True): AnExpress = ArtInstance.get_ArtExpress() if(0 <= eval(AnExpress) <= 100): break print(yate.header('%s = ' %(AnExpress), header_level = 1)) print(yate.header('更多算题,敬请期待!')) # print('%s = ' %(AnExpress)) print(yate.include_footer({'Home':'/index.html'}))
#! /usr/local/bin/python3 import cgitb cgitb.enable() import cgi import ex_7 import yate athletes = ex_7.get_from_store() form_data = cgi.FieldStorage() athelete_name = form_data['which_athelete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print( yate.header("generate" + athelete_name + ",dob" + athletes[athelete_name].dob + " .")) print(yate.para("Athlete: ")) print(yate.u_list(athletes[athelete_name].top3)) print( yate.include_footer({ "Home": "/index.html", "select another antlent": "generate_list.py" }))
import athletemodel import yate import cgi #cgi library athletes = athletemodel.get_from_store() # get the data from the model and put it into a dictionary form_data = cgi.FieldStorage() #Grab all of the form data and put it in a dictionary athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach kelly's Timing data")) print(yate.header("Athlete: "+athlete_name+', DOB: '+athletes[athlete_name].dob)) print(yate.para("The top 3 times are: ")) print(yate.u_list(athletes[athlete_name].top3())) print(yate.include_footer({"Home":"/index.html","Select another athlete":"generate_list.py"}))
import cgi import yate import athletemodel athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data["which_athlete"].name print(yate.start_response()) print(yate.include_header("Athlete's timing data:")) #print(yate.para(athlete_name+"'s time data:")) print( yate.header("Athlete:" + athlete_name + ",DOB = " + athletes[athlete_name].dob + '.')) print(yate.para("The top times for this athletes are:")) print(yate.u_list(athletes[athlete_name].top())) print( yate.include_footer({ "Home": "index.html", "Choose another athlete": "generate_list.py" }))
#! /usr/local/bin/python3 import cgi import athletemodel import yate #处理选中选手的数据 form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value #这边书里面还是athlete_name,导致下面调用没有定义。 athlete = athletemodel.get_athlete_from_id(athlete_id) #用yata里面的内容返回成网页可以理解的内容 print(yate.start_response()) print(yate.include_header("运动员的成绩")) print( yate.header("运动员:" + athlete['Name'] + ", 出生日期:" + athlete['DOB'] + " .")) print(yate.para("最好成绩: ")) print(yate.u_list(athlete['top3'])) print( yate.para("the entire set of timing data is: " + str(athlete['data']) + "(duplicates removed).")) #增加了显示所有数据的内容 print( yate.include_footer({ "返回主页": "/index.html", "查看其他运动员成绩": "generate_list.py" }))
#!/usr/bin/python3 import cgi import athletemodel import yate import cgitb cgitb.enable() athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data ")) print(yate.header("Athlete : " + athletes[athlete_name].name + " DOB : " + athletes[athlete_name].dob + "." + str(athletes[athlete_name]))) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
form_data = cgi.FieldStorage() # Access the named piece of data from the form's data. athlete_id = form_data['which_athlete'].value athletes = athletemodel.get_athlete_from_id(athlete_id) # Here cgi module is used to access the form data coming from genrate_list.py # which athlete data you are working with # Web server send us the data to CGI Script(from genrate_list.py) # Grab all the form data and put it in dictionary print(yate.start_response()) print(yate.include_header("NUAC's Timing Data")) print(yate.header("Athlete: " + athletes['Name'] + " " + ', DOB:' + athletes['DOB'] + ".")) print(yate.para_text("The Top Three times for the Athletes are:")) print(yate.u_list(athletes['top3'])) print(yate.para_text("The entire set of timing data is: " + str(athletes['data']) + " (duplicates removed).")) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
import glob import cgi import cgitb cgitb.enable() form_data = cgi.FieldStorage() athletes = get_from_store() #print('formdata -> ',form_data) athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Timings Page")) print(yate.header("Timings")) print(yate.para('Timing data for ' + athlete_name + ' DOB : ' + athletes[athlete_name].dob)) #print('which -> ',athlete_name) #athlete_timings = athletes[athlete_name] print(yate.start_form("generate_timing_data.py")) #print(yate.u_list(athletes[athlete_name])) print(yate.u_list(athletes[athlete_name].top3)) print(yate.end_form()) print(yate.include_footer({"Home": "/index.html","yet another athlete " : "/cgi-bin/generate_list.py"}))
__author__ = 'Dixit_Patel' from genericFunctions import * import athletemodel #from athletemodel import * import yate import glob data_files = glob.glob("data/*.txt") print(glob.glob0('data','/*.txt')) print(glob.glob1('data','/*.txt')) athletes = athletemodel.put_to_store(data_files) print(yate.header("ATHLetA")) print(yate.para('Select an athlete from list')) print(yate.start_form('')) print(type(athletes)) for athlete in athletes: print(yate.radio_button("which_athlete",athletes[athlete].name)) # print(yate.radio_button('James','James')) # print(yate.radio_button('Mikey','Mikey')) print(yate.end_form()) print(yate.include_footer({"Home": "/index.html"}))
#! /usr/bin/env python import cgitb cgitb.enable() import cgi import yate import athletemodel form_data = cgi.FieldStorage() if "which_athlete" not in form_data: print "<H1>Error</H1>" print "Please choose one athlete." athlete_id = form_data["which_athlete"].value athlete = athletemodel.get_athlete_from_id(athlete_id) print yate.start_response() print yate.include_header("Coach Kelly's Timing Data") print yate.header("Athlete:" + athlete['name'] + ", DOB:" + athlete['dob'] + ".") print yate.para("The top times for " + athlete['name'] + " are:") print yate.u_list(athlete['top3']) print yate.para("The entire set of timing data is: " + str([float(item) for item in athlete['data']]) + " (duplicates removed).") print yate.do_form("add_timing_data.py", [athlete_id], "post", "Add a new time"); print yate.include_footer({"Home":"../index.html", "Select another athlete":"generate_list.py"})
ExamTimeInitSeconds = ExamTimeInit[0] * 3600 + ExamTimeInit[ 1] * 60 + ExamTimeInit[2] ExamTimeAct = cal_time.seconds2time(ExamTimeActSeconds) CostTimeText = '<span style="color:#009966; font-size:150%%;">%d小时%d分%d秒</span>' % ( ExamTimeAct[0], ExamTimeAct[1], ExamTimeAct[2]) if (ExamTimeActSeconds > ExamTimeInitSeconds): CostTime = cal_time.seconds2time(ExamTimeActSeconds - ExamTimeInitSeconds) CostTimeText = CostTimeText + '(已超时<span style="color:#FF6666; font-size:150%%;">%d小时%d分%d秒</span>)' % ( CostTime[0], CostTime[1], CostTime[2]) print( yate.header( '<span style="text-decoration:underline; color:#333333; font-size:150%%">韦浩宇</span>小朋友,' '本次考试你做对了<span style="color:#009966; font-size:150%%"> %d </span>道题,' '做错了 <span style="color:#FF0033; font-size:150%%"> %d </span> 道题,' '得分 <span style="color:#FF6600; font-size:150%%; text-decoration:underline">%d</span> ,考试用时 %s ,请继续努力哦!' % (RightNum, len(instance_ER_List) - RightNum, score, CostTimeText), 2)) # ====== 判断答题奖励情况:全部正确且不超时,给一个奖励; 如果答题时间小于规定时间一半,则给两个奖励 ====== if (RightNum == len(instance_ER_List) and int(form_data['numlist'].value) >= 40 and len(form_data['operator']) >= 2 and int(form_data['level'].value) >= 3): ThisExamAward = 0 if (ExamTimeActSeconds <= ExamTimeInitSeconds): AwardCount[0] += 1 ThisExamAward += 1 AwardShowString = '这次考试在规定时间内全对,恭喜您获得奖励' if (ExamTimeActSeconds <= ExamTimeInitSeconds // 2):
import cgi import athletemodel import yate import cgitb #cgitb.enable() athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header('coach kelly timing data')) print(yate.header('athlete:' + athlete_name + 'Dob:' + athletes[athlete_name].dob + '.')) print(yate.para('the top times for this athlete are:')) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({'Home':'/index.html', 'select another athlete':'generate_list.py'}))
import cgitb cgitb.enable() import kelly6 import yate import glob data_files = glob.glob("data/*.txt") athletes = kelly6.loadfiles(data_files) form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value athlete = None for each_athlete in athletes: if each_athlete.name == athlete_name: athlete = each_athlete else: pass print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("Athlete: " + athlete_name + ", DOB: " + athlete.birthdate + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athlete.top3())) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
import athletemodel import yate import cgi import cgitb cgitb.enable() form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value athlete = athletemodel.get_athlete_from_id(athlete_id) print(yate.start_response()) print(yate.include_header("NUAC's List of Athletes")) print(yate.header("Athlete: " + athlete["name"]+ ", DOB: " + athlete["dob"]+ ". ")) print(yate.para("The top times for this athlete are: ")) print(yate.u_list(athlete["top3"])) print(yate.para("The entire set of timing data is : " + str(athlete["clean_data"]) + " (duplicates removed.)")) print(yate.include_footer({"HOME": "/index.html", "Select another athlete": "generate_list.py"}))
#! /usr/local/bin/python3 import cgi import athletemodel_sqlite3 import yate form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value athlete = athletemodel_sqlite3.get_athlete_from_id(athlete_id) print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print( yate.header("Athlete: " + athlete['Name'] + " , DOB: " + athlete['DOB'] + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athlete['top3'])) print( yate.para("The entire set of timing data is : " + str(athlete['data']) + "(duplicates removed).")) print(yate.include_footer({"Home": "/index_sqlite3.html", \ "Select another athlete": "generate_list_sqlite3.py"}))
# 生成游戏页面 import sys import yate, arithmetic_training_games # =================生成一个HTML页面================= print(yate.start_response()) print(yate.include_header('欢迎来到韦浩宇的算术运算训练营!')) # print(yate.start_form('arithmetic_training_games.py')) print(yate.para('即将开始算术训练!', fontsize=15, fontcolor='#a52a2a')) print(yate.start_form('')) Numlist = [x for x in range(20)] ArtInstance = arithmetic_training_games.ArithmeticMode(Numlist, level=2, OperatorList=['-']) while (True): AnExpress = ArtInstance.get_ArtExpress() if (0 <= eval(AnExpress) <= 100): break print( yate.header('%s = %s' % (AnExpress, yate.text_inputs('ArithmeticValue') + yate.submit_button('确定')), header_level=1)) # print() print(yate.end_form()) print(yate.header('更多算题,敬请期待!')) # print('%s = ' %(AnExpress)) print(yate.include_footer({'Home': '/index.html'}))
document.name.action="generate_expression.py";\ document.name.submit();\ }\ function ExamAction(){\ document.name.action="exam.py";\ document.name.submit();\ }' # SubURLS = OrderedDict() # SubURLS['自由练习'] = 'FreeExerAction()' # SubURLS['进行测验'] = 'ExamAction()' # =================生成一个HTML页面================= print(yate.start_response()) print(yate.include_header_js('设置算术表达式的生成参数!', Form_JS)) print(yate.header('设置算术表达式的生成参数!', 1)) # print(yate.para('%s' %('=' * 10 + '请设置算术表达式的生成参数' + '=' * 10))) print(yate.start_form('', 'name')) print(yate.para('1.请设置计算值范围')) print(yate.select_set('numlist', NumList, SelectedVals=numlist_checked)) print(yate.para('2.请设置使用的运算符')) for key in OperatorList: checkedVal = False if (OperatorList[key][0] in operator_checked): checkedVal = True print( yate.checked_box('operator', OperatorList[key][0], OperatorList[key][1], key, checked=checkedVal))
athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_player'].value if len(form_data.list) == 1: connection = sqlite3.connect("target/coach_data.sqlite") cursor = connection.cursor() cursor.execute("SELECT value FROM timing_data as t INNER JOIN athletes as a on a.id=t.athlete_id where a.name=?", (athlete_name,)) values = cursor.fetchall() times = [] for value in values: times.append(value[0]) print(yate.start_response()) print(yate.include_header("Coack Kelly's timing data")) print(yate.header("player name:" + athlete_name)) print(yate.para("top times")) print(yate.u_list(times)) print(yate.include_footer( {"Click here to go Home": "/index.html", "Click here to select another player": "generateL_list_sqlite3.py"} )) connection.commit() connection.close() else: time_value = form_data['time_value'].value connection = sqlite3.connect("target/coach_data.sqlite") cursor = connection.cursor() cursor.execute("SELECT id FROM athletes WHERE name = ?", (athlete_name,)) athlete_id = cursor.fetchone()[0] cursor.execute("INSERT INTO timing_data (athlete_id, value) VALUES (? ,?)", (athlete_id, time_value)) connection.commit()
#! /usr/local/bin/python3 import cgi import athletemodel import yate form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value athlete = athletemodel.get_athlete_from_id(athlete_id) print((yate.start_response())) print((yate.include_header("NUAC's Timing Data"))) print((yate.header("Athlete: " + athlete['Name'] + ", DOB: " + athlete['DOB'] + "."))) print((yate.para("The top times for this athlete are:"))) print((yate.u_list(athlete['top3']))) print((yate.para("The entire set of timing data is: " + str(athlete['data']) + " (duplicates removed)."))) print((yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"})))
# 从表单中获取奖励值: try: AwardCount = [int(x.value) for x in form_data['AwardCount']] except KeyError: AwardCount = [0, 0] except json.JSONDecodeError: AwardCount = [] #==================== 定义一个把json字符串转换为json对象的js ==================== JS_string = '' #==================== 输出错题页面 ==================== print(yate.start_response()) print(yate.include_header_js('欢迎来到韦浩宇的算术运算训练营!', JS_string)) print( yate.header( '<span style="color:#ff6666">下面是你本次测验的全部错题,赶紧进行更正吧,会有奖励哦!</span>', 2)) print(yate.start_form('WrongCorrect.py', 'formname')) # 循环输出所有错题,已经修订正确的错题则不再显示输入框 for Astring in ShowWrongQuestions: print(yate.header(Astring, 2)) if (WQLeftTag == 1): # =====================更正后仍有错题,需要设置回传表单的内容===================== print(yate.input_hidden('WrongQuestions')) #把所有错题传回表单 print( '<script>var jsonString = JSON.stringify(%s); document.formname.WrongQuestions.value=jsonString;</script>' % json.dumps(WrongQuestionList)) # 将json对象转换为JSON字符串 print(yate.end_form('确定', 'sub')) elif (WQLeftTag == 2): print('</form>')
#! /usr/local/bin/python3 import cgitb cgitb.enable() import athletelist_model #to get data from model py import yate #to html texts import cgi athletes = athletelist_model.get_from_store() #get data from pickled format #get form data form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value #print html page print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("Athlete: " + athlete_name + ", DOB: " +athletes[athlete_name].dob + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athletes[athlete_name].top3())) print(yate.include_footer({"Home": "/index.html","Select another athlete": "athletelist_generate_list.py"}))
# 這裡的數據指的是 athletes 這個數據 (字典,index=選手名,值=一個list特徵的物件) form_data = cgi.FieldStorage() # 我還是不太清楚 form_data是個什麼東西 # 在 generate_list 中,我們作的button, # 把 "which_athlete"塞到 name,把選手的名字=athletes[each_athlete].name塞到value # 即: # <input type="radio" name="which_athlete" value="選手名字"> 選手名字<br /> athlete_name = form_data["which_athlete"].value # 總是以 Content-type 作為開頭 print(yate.start_response()) # 生成webPage並提供標題 print(yate.include_header("指定選手的計時數據")) print(yate.header("選手:" + athlete_name + ",生日:" + athletes[athlete_name].birth + "。")) # 接下來才是內容段落:告訴妳的用戶要作什麼 print(yate.para("The top times for this athlete are:")) # 生成一個無序的list print(yate.u_list(athletes[athlete_name].top3)) # 有@property # print(yate.u_list(athletes[athlete_name].top3())) # 沒有@property # 在生成的HTML頁面最下面增加一個連結,指向主頁Home print(yate.include_footer({"Home":"/index.html", "Select another athlete":"generate_list.py"}))
# while (True): # ArithmeticExpress = ATG.ArithmeticMode(Numlist, OperatorList, CalLevel).get_ArtExpress() # try: # FactResult = eval(ArithmeticExpress) # if (0 <= FactResult <= MaxNum): # break # except ZeroDivisionError: # continue # action_URL = 'judge_result.py' header_string1 = '请输入计算结果再提交' # re_answer_tag = 1 # if(header_string1): print(yate.header(header_string1,3)) print(yate.header( '第 %d 题 ----> 已答对<font color = "green"> %d </font>题,答错<font color="red"> %d </font>题(已纠正 <font color="blue"> %d </font>题)' % (ExpNum, (ExpNum - WrongNum - 1), WrongNum, CorrectNum), 4)) print(yate.start_form('judge_result.py')) # =================在页面上记录上之前的设置参数================= print(yate.input_hidden('numlist', form_data['numlist'].value)) for Operator in OperatorList: print(yate.input_hidden('operator', Operator)) print(yate.input_hidden('level', form_data['level'].value)) print(yate.input_hidden('ExpNum', ExpNum)) print(yate.input_hidden('WrongNum', WrongNum)) print(yate.input_hidden('WrongTag', WrongTag)) print(yate.input_hidden('CorrectNum', CorrectNum)) print(yate.input_hidden('NewSetting', 0)) print(yate.input_hidden('ArithmeticExpress', ArithmeticExpress))
#!/usr/bin/python3 import athletemodel import yate import cgi import cgitb cgitb.enable() form_data = cgi.FieldStorage() athelete_name = form_data['which_athelete'].value atheletes = athletemodel.get_from_store() print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print( yate.header("Timing data for :" + athelete_name + ", DOB: " + atheletes[athelete_name].dob)) print(yate.para("The top times for this athelete are:")) print(yate.u_list(atheletes[athelete_name].top3)) print( yate.include_footer({ "Home": "/index.html", "Select Another Athelete": "/cgi-bin/generate_list.py" }))
import cgi import athletemodel import yate athletes = athletemodel.get_from_store() # Here cgi module is used to access the form data coming from genrate_list.py # which athlete data you are working with # Web server send us the data to CGI Script(from genrate_list.py) # Grab all the form data and put it in dictionary form_data = cgi.FieldStorage() # Access the named piece of data from the form's data. athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly Timing Data")) print(yate.header("Athlete: " + athlete_name + " " + ', dob:' + athletes[athlete_name].dob + ".")) print(yate.para_text("The top Three times for the Athletes")) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
#! /usr/bin/python3 #import cgitb #cgitb.enable() import model_7 import yate import cgi form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value athletes = model_7.get_from_store() print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("Timing data for: " + athlete_name + ", DOB: " + athletes[athlete_name].dob + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
__author__ = 'micheng' import yate import athletemodel print(yate.start_response()) print(yate.include_header("The Champion For Now")) print(yate.para("Here is the best player among all our athletes:")) best_record = athletemodel.get_all_timing()[0] best_timing = best_record[1] champion = athletemodel.get_athlete_from_id(best_record[0]) print(yate.header(champion['Name'] + ', DOB: ' + champion['DOB'] + '.')) print( yate.para('The entire set of timing data is: ' + str(champion['data']) + ' (duplicates removed).')) print(yate.header("The best time is: <b>" + best_timing + "</b>")) print( yate.include_footer({ "Home": "/index.html", "Select another athlete": "generate_list.py" }))
import cgi import athletemodel import yate #import cgitb #cgitb.enable() athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's TimingData")) print(yate.header("Timing data for " + athlete_name + ", DOB; " + athletes[athlete_name].dob)) print(yate.para("The top times for " + athlete_name + " are:")) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({"Home" : "/index.html", "Select Another Athlete" : "generate_list.py"}))
#! /usr/bin/python3 # -*- coding: gbk -*- import cgi import athletemodel import yate athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header(athlete_name+"的情报收集")) print(yate.header("角色英文名:"+athletes[athlete_name].ename+",生日:"+athletes[athlete_name].dob+".")) print(yate.para("登场作品:")) print(yate.para(athletes[athlete_name].movie)) print(yate.include_footer({"返回首页":"/index.html","选择其他角色":"generate_list.py"}))
__author__ = 'micheng' import yate import athletemodel print(yate.start_response()) print(yate.include_header("The Champion For Now")) print(yate.para("Here is the best player among all our athletes:")) best_record = athletemodel.get_all_timing()[0] best_timing = best_record[1] champion = athletemodel.get_athlete_from_id(best_record[0]) print(yate.header(champion['Name'] + ', DOB: ' + champion['DOB'] +'.')) print(yate.para('The entire set of timing data is: '+str(champion['data'])+' (duplicates removed).')) print(yate.header("The best time is: <b>" + best_timing + "</b>")) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
'}}'\ 'function SubCase() {'\ 'var con1=confirm("确定要兑换"+document.formname.ExChange.value+"奖励值吗?");'\ 'if(con1===true){'\ 'document.formname.submit();'\ '}}'\ # ====================== 以下为奖励查询页面 ===================== print(yate.start_response()) print(yate.include_header_js('奖励查询和兑换', js_string)) # ====================== 碎片能够兑换成奖励值 ===================== if (AwardCount[1] >= 10): print( yate.header( '<span style="color:#ff6666">你现在有 %d 个碎片可以先兑换成奖励值啦!</span>' % AwardCount[1], 2)) print( '<div><span style="color:#660066;font-size:18px;">请选择需要兑换的奖励值数量</span>' ) print(yate.start_form('AwardTable.py', 'formname')) print( yate.subbutton('-', 'subone(%d,%d)' % (0, AwardCount[1]), 'substract', status='disabled', style='buttonCS')) print( '<input type="text" name="ExChange" value="0" onchange="ExCase(%d,%d)" class="input_control">' % (0, AwardCount[1])) print(
#!/usr/bin/env python3 # coding=utf-8 import cgi import athletemodel import yate import cgitb cgitb.enable() athletes = athletemodel.get_from_store() from_data = cgi.FieldStorage() athlete_name = from_data['Which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("athlete: " + athlete_name + " DOB " + athletes[athlete_name].dob + ".")) print(yate.u_list(athletes[athlete_name].top3())) print(yate.include_footer({"Home":"/index.html", "Select another athlete":"generate_list.py"}))
#! /usr/local/bin/python3 import cgi import athletemodel import yate import cgitb cgitb.enable() athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print(yate.header("Athlete: " + athlete_name + ", Date of Birth: " + athletes[athlete_name].dob)) print(yate.para("The top three times for " + athlete_name + " are:")) print(yate.u_list(athletes[athlete_name].top3)) print(yate.include_footer({"Home":"/index.html", "Select another Athlete":"generate_list.py"}))
import cgitb import cgi import yate import athletemodel # 打开错误提示 cgitb.enable() # 获取请求表单 form_data = cgi.FieldStorage() # 获取选手主键 athlete_id = form_data["which_athlete"].value # 获取选手 athlete = athletemodel.get_athlete_from_id(athlete_id) # 响应文件类型 print(yate.start_response()) # html头 print(yate.include_header("NUAC's Timing Data")) # 提示数据 print(yate.header("Athlete:" + athlete["Name"] + ",DOB:" + athlete["DOB"])) # 打印提示数据 print(yate.para("The top times for this athlete are:")) # 打印数据集合 print(yate.u_list(athlete["top3"])) # 打印数据 print(yate.para("The entire set of timing data is:" + str(athlete["data"]) + ".(duplicates removed).")) # html尾 print(yate.include_footer({"Home":"/index.html", "Select another athlete":"/cgi-bin/generate_list.py"}))
# operatelist = ['+', '-', '*', '//'] # operatelist['add'] = '+' # operatelist['subtract'] = '-' # operatelist['multiply'] = '*' # operatelist['divide'] = '//' # # ================== 初始化完毕 ================== # operatelist = ['+', '-', '*', '//'] operatelist1 = {'加号': '+', '减号': '-', '乘号': '*', '除号': '//'} operatelist = {} for key in operatelist1: operatelist[operatelist1[key]] = key print(yate.start_response()) print(yate.include_header('这是一个WEB应用测试页面')) print(yate.header('%s' % ('=' * 10 + '下面是测试内容' + '=' * 10), 3)) print(yate.start_form('test_content.py')) # for Anoperator in operatelist: # print(yate.checked_box('operator',Anoperator)) print(yate.select_set('operator', operatelist, 3, multiple=True)) print(yate.end_form('提交')) footer_string = '=' * 10 + '结束' + '=' * 10 form_data = cgi.FieldStorage() if (form_data): if (isinstance(form_data['operator'], list)): OperatorList = [x.value for x in form_data['operator']]
import yate import athletemodel import athletelist import cgi import cgitb cgitb.enable() athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Time Data Page")) if athlete_name: print( yate.header(athletes[athlete_name].name + athletes[athlete_name].dob + "'s timing data top 3 are:")) #tops=athletes[athlete_name].top3 print(yate.u_list(athletes[athlete_name].top3)) print(athlete_name) print( yate.include_footer({ "Home": "../index.html", "Another Athlete": "generate_list.py" }))
# -*- coding:utf-8 -*- import cgi import yate import athletemodel #import cgitb #cgitb.enable() ale = athletemodel.get_from_store() form_data = cgi.FieldStorage() atlete_name = form_data["which_athlete"].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print( yate.header("Athlete:" + ale[atlete_name].name + ",DOB:" + ale[atlete_name].dob + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(ale[atlete_name].top3)) print( yate.include_footer({ "Home": "/index.html", "Select another one": "generate_list.py" }))
#! /usr/bin/python3 # import cgitb # cgitb.enable() import new_sql_model import yate import cgi form_data = cgi.FieldStorage() athlete_id = form_data["which_athlete"].value athlete = new_sql_model.get_athlete_from_id(athlete_id) print(yate.start_response()) print(yate.include_header("NUAC's Timing Data")) print(yate.header("Athlete: " + athlete["Name"] + " DOB: " + athlete["DOB"])) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athlete["top3"])) print(yate.para("The entire set of timing data is: " + str(athlete["data"]) + " (duplicates removed). ")) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))
#!/usr/bin/env python3 import cgi import yate import athletemodel #import cgitb #cgitb.enable() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value athletes = athletemodel.get_from_store() print(yate.start_response()) print(yate.include_header("Coach Kelly's List of Athletes")) print( yate.header('Athlete: ' + athlete_name + ', DOB: ' + athletes[athlete_name].dob + '.')) print(yate.para('The top times for this athlete are:')) print(yate.u_list(athletes[athlete_name].top3)) print( yate.include_footer({ 'Home': '/index.html', 'Select another athlete': 'generate_list.py' }))
import cgitb import cgi import sportlermodell import yate cgitb.enable() alle_sportler = sportlermodell.konserve_lesen() form_daten = cgi.FieldStorage() sportler_name = form_daten['sportlerwahl'].value l_elemente = ['1', '2', '3'] print(yate.antwort_anfang()) print(yate.seitenanfang('Zeitdaten')) print( yate.header('Sportler: ' + sportler_name + ' Geb: ' + alle_sportler[sportler_name].geb + '.')) print(yate.para('Die Bestzeiten sind:')) print(yate.u_liste(l_elemente)) print( yate.seitenende({ 'Home': '/index.html', 'Anderen Sportler wählen': 'liste_generieren.py' }))
#! /usr/local/bin/python3 import cgi import yate import athletemodel import cgitb cgitb.enable() athletes = athletemodel.get_from_store() # athletemodel.get_from_store get a dict # { name1: AthleteList1, name2: AthleteList2....} # from pickled file form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value print(yate.start_response()) print(yate.include_header("Coach Kelly's Timing Data")) print( yate.header("Athlete: " + athlete_name + ", DOB: " + athletes[athlete_name].dob + ".")) print(yate.para("The top times for this athlete are:")) print(yate.u_list(athletes[athlete_name].top3())) print( yate.include_footer({ "Home": "/index.html", "Select another athlete": "generate_list.py" }))
__author__ = 'p.olifer' import cgi, cgitb import athletemodel import yate cgitb.enable() #athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() athlete_name = form_data['which_athlete'].value athlete = athletemodel.get_athlete_from_id(athlete_name) print(yate.start_response()) print(yate.include_header("NUAC's Timing Data")) #print(yate.header("Athelete: " + athlete_name + ', DOB: ' + athletes[athlete_name].dob + ".")) print( yate.header("Athelete: " + athlete['Name'] + ', DOB: ' + athlete['DOB'] + ".")) print(yate.para('The top times for this athlete are:')) #print(yate.u_list(athletes[athlete_name].top3())) print(yate.u_list(athlete['top3'])) #print(yate.para("The entire set of timing data is: " + str(athletes[athlete_name].clean_data) + " (duplicates removed.)")) print( yate.para("The entire set of timing data is: " + str(athlete['data']) + " (duplicates removed.)")) print( yate.include_footer({ "Home": "/index.html", "Select another athlete": "generate_list.py" }))
__author__ = 'Dixit_Patel' from genericFunctions import * import athletemodel #from athletemodel import * import yate import glob data_files = glob.glob("../data/*.txt") #print(data_files) # print(glob.glob0('data','/*.txt')) # print(glob.glob1('data','/*.txt')) athletes = athletemodel.put_to_store(data_files) # impt line - start response print(yate.start_response()) print(yate.include_header("Home")) print(yate.header("AthLetA")) print(yate.para('Select an athlete from list')) print(yate.start_form("generate_timing_data.py")) print(type(athletes)) for athlete in athletes: print(yate.radio_button("which_athlete",athletes[athlete].name)) # print(yate.radio_button('James','James')) # print(yate.radio_button('Mikey','Mikey')) print(yate.end_form()) print(yate.include_footer({"Home": "/index.html"}))
print(yate.start_response()) print(yate.include_header_js('韦浩宇的算术训练营 -- 测验回顾', '')) try: with open(RecordFilePath, mode='r', encoding='utf-8') as readfile: jsonstring = json.loads(readfile.read().strip()) ExamRecDict = OrderedDict() for Arec in sorted(jsonstring['ExamRecords'].keys(), reverse=True): for AnExam in jsonstring['ExamRecords'][Arec]: WrongCount = WrongCount + len( jsonstring['ExamRecords'][Arec][AnExam]['WrongRecords']) ExamRecDict[Arec] = Arec + '(%d | %d)' % (len( jsonstring['ExamRecords'][Arec]), WrongCount) print('<div id="topfixed">') print(yate.header('韦浩宇的算术训练营 -- 测验回顾', 1)) print(yate.para('请选择查看哪天的测验?')) print(yate.start_form('ExamRecords.py')) print(yate.select_set('ExamRecSelect', ExamRecDict)) print(yate.end_form('确定', 'sub')) try: Recordkey = form_data['ExamRecSelect'].value print(yate.para('')) print( yate.header( '以下为 <ins>%s</ins> 的测验记录(共 <ins>%d</ins> 次):' % (Recordkey, len(jsonstring['ExamRecords'][Recordkey])), 2)) print('</div>') print('<div style="margin-top:220px">') for AnExam in sorted(jsonstring['ExamRecords'][Recordkey].keys()):
print(dir()) the_files = ['sarah2.txt', 'james2.txt', 'mikey2.txt', 'julie2.txt'] data = put_to_store(the_files) print(data) for each_athlete in data: print(data[each_athlete].name + ' ' + data[each_athlete].dob) data_copy = get_from_store() for each_athlete in data_copy: print(data_copy[each_athlete].name + ' ' + data_copy[each_athlete].dob) print(yate.start_response()) print(yate.start_response("text/plain")) print(yate.start_response("application/json")) print(yate.include_header("Welcome to my home on the web!")) print(yate.include_footer({'Home': '/index.html', 'Select': '/cgi-bin/select.py'})) print(yate.include_footer({})) print(yate.start_form("/cgi-bin/process-athlete.py")) print(yate.end_form()) print(yate.end_form("Click to Confirm Your Order")) for fab in ['John', 'Paul', 'George', 'Ringo']: print(yate.radio_button(fab, fab)) print(yate.u_list(['Life of Brian', 'Holy Grail'])) print(yate.header("Welcome to my home on the web")) print(yate.header("This isa sub-sub-sub-sub-heading", 5)) print(yate.para("Was it worth the wait? We hope it was..."))
except ValueError: header_string1 = '输入答案必须为数字,请输入正确格式的答案!' # =================== 定义一段显示练习计时的代码 =================== JS_string = 'var time=new Date();time.setHours(0);time.setMinutes(0);time.setSeconds(0);var downtime = 0;var timeOutText="";var totalseconds=0;' \ 'function countdown(){var timeshow=document.getElementById("timeshow");var hour=time.getHours();var min=time.getMinutes();var second=time.getSeconds();' \ 'setTimeout("countdown()",1000);totalseconds ++;if(downtime==1){time.setSeconds(second-1);timeshow.style.color="#0099CC";}' \ 'else{time.setSeconds(second+1);timeshow.style.color="#0099CC";}' \ 'hour<10?hour="0"+hour:hour;min<10?min="0"+min:min;second<10?second="0"+second:second;timeshow.innerHTML=timeOutText+hour+":"+min+":"+second;' \ 'document.form.totaltime.value = totalseconds}var timer=setTimeout("countdown()",1000);' # =================生成一个HTML页面================= print(yate.start_response()) print(yate.include_header_js('欢迎来到韦浩宇的算术运算训练营!', JS_string)) # print(yate.start_form('arithmetic_training_games.py')) print(yate.header('欢迎来到韦浩宇的算术运算训练营!', 1)) print(yate.header(header_string1, 2)) print( yate.header( '第 %d 题, 计时:<span id="timeshow"></span> ----> 已答对<font color = "green"> %d </font>题,答错<font color="red"> %d </font>题(已纠正 <font color="blue"> %d </font>题)' % (ExpNum, RightAnsNum, WrongNum, CorrectNum), 4)) print(yate.start_form('generate_expression.py', name='form')) # =================在页面上记录上之前的设置参数================= print(yate.input_hidden('numlist', form_data['numlist'].value)) for Operator in OperatorList: print(yate.input_hidden('operator', Operator)) print(yate.input_hidden('level', form_data['level'].value)) print(yate.input_hidden('ArithmeticExpress', ArithmeticExpress)) print(yate.input_hidden('FactResult', FactResult)) print(yate.input_hidden('ExpNum', ExpNum))
#! /usr/bin/env python import cgitb cgitb.enable() import cgi import yate import athletemodel athletes = athletemodel.get_from_store() form_data = cgi.FieldStorage() if "which_athlete" not in form_data: print "<H1>Error</H1>" print "Please choose one athlete." athlete_name = form_data["which_athlete"].value the_athlete = athletes[athlete_name] print yate.start_response() print yate.include_header("Coach Kelly's Timing Data") print yate.header("Athlete:" + athlete_name + ", DOB:" + the_athlete.dob + ".") print yate.para("The top times for " + athlete_name + " are:") print yate.u_list(the_athlete.top3) print yate.include_footer({"Home":"index.html", "Select another athlete":"generate_list.py"})
__author__ = 'micheng' import cgi import athletemodel import yate form_data = cgi.FieldStorage() athlete_id = form_data['which_athlete'].value athlete = athletemodel.get_athlete_from_id(athlete_id) print(yate.start_response()) print(yate.include_header("NUAC's Timing Data")) print(yate.header("Athlete: " + athlete['Name'] + ", DOB: "+athlete['DOB']+'.')) print(yate.para('The top times for this athlete are:')) print(yate.u_list(athlete['top3'])) print(yate.para('The entire set of timing data is: '+str(athlete['data'])+' (duplicates removed).')) print(yate.include_footer({"Home": "/index.html", "Select another athlete": "generate_list.py"}))