Python - 显示输入的信息和平均值

时间:2016-12-11 16:08:04

标签: python google-app-engine average

我知道标题没有多大帮助,但我真的不知道该怎么写。我的代码应该做的是显示一个页面,其中包含用于输入名称和分数的输入,然后它通过library.py页面中的某些函数使其从高到低列出它们,就像高分板一样。然后在底部需要有一个平均分。但是我真的很难过。首先,当我输入信息时,它甚至没有注册它。我在表单标签上使用了GET方法,但信息不会随处可见。它应该至少进入网址栏。但事实并非如此。我甚至不知道如何处理图书馆页面。这只是一个大混乱。如果你能帮助我,谢谢。

main.py

import webapp2

#from library import GameInfo
from page import FormsPage, ResultsPage

class MainHandler(webapp2.RequestHandler):

    def get(self):
        f = FormsPage()
        r = ResultsPage()

        if self.request.GET:
            user = self.request.GET['name']
            score = self.request.GET['score']

            self.response.write(r.rbegin + r.rbody)

        else:
            self.response.write(f.fbegin + f.fbody + f.fformbox + f.fforms)


app = webapp2.WSGIApplication([
    ('/', MainHandler)
], debug=True)

library.py

class ScoresList():
    def __init__(self):
        self.name = ''
        self.__score = 0
        #keeps memory of all the scores intered
    def list_scores(self, s):
        self.__score_array.append(s)

    def make_list(self):
        output = ''
        for score in self.__score_array:
            output += name + score
        return output

class Average():
    pass

page.py

class FormsPage(object):
    fbegin = '''<!DOCTYPE HTML>
<html>
    <head>
        <title>Post Your High Scores</title>
        <link href="/css/style.css" rel="stylesheet" type="text/css"/>
    </head>'''
    fbody = '''<body>
    <h1>Submit Your High Scores</h1>'''
    fformbox = '''<div> '''
    fforms = '''<form method="GET">
            <label>Name: </label><input type="text" name"name"/>
            <label>Score: </label><input type="text" name"score"/></br>
            <label>Name: </label><input type="text" name"name"/>
            <label>Score: </label><input type="text" name"score"/></br>
            <label>Name: </label><input type="text" name"name"/>
            <label>Score: </label><input type="text" name"score"/></br>
            <label>Name: </label><input type="text" name"name"/>
            <label>Score: </label><input type="text" name"score"/></br>
            <label>Name: </label><input type="text" name"name"/>
            <label>Score: </label><input type="text" name"score"/></br>
            <input type="submit" value="Enter Scores" />
        </form>
    </body>
</html>'''

class ResultsPage(object):
    rbegin = '''<!DOCTYPE HTML>
    <html>
        <head>
            <title>Here are Your High Scores</title>
            <link css/style.css/>
        </head>'''
    rbody = '''<body>
            <div class="scoreboard">
                <h1>High Scores</h1>
            </div>
        </body>
    </html>'''

1 个答案:

答案 0 :(得分:0)

您忘记了name属性的等号。此外,您将发生冲突,为多个输入提供相同的名称。

尝试name="name1"等。