gpt4 book ai didi

Python 应用程序错误(Udacity)

转载 作者:行者123 更新时间:2023-12-01 04:34:29 26 4
gpt4 key购买 nike

我一直在使用 udacity.com 学习编写一个应用程序,该应用程序允许您输入您的年龄,当您点击“提交”时,它会检查您是否输入了正确的年、月和日。每次我按下提交并在谷歌应用程序引擎上运行它时,本地主机网页都会变黑。我的代码中哪里漏掉了。我检查了我的代码,看起来应该可以工作。我需要第二双眼睛来关注这个问题。

    import webapp2

form="""
<form method="post">
What is your birthday?
<br>
<label>Month<input type="type" name="month"></label>
<label>Day<input type="type" name="day"></label>
<label>Year<input type="type" name="year"></label>
<div style="color: red">%(error)s</div>
<br>
<br>
<input type="submit">
</form>
"""
def valid_year(year):
if year and year.isdigit():
year = int(year)
if year > 1900 and year < 2020:
return year

def valid_day(day):
if day and day.isdigit():
day = int(day)
if day > 0 and day <= 31:
return day

months = ['Janurary',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December']


month_abbvs = dict((m[:3].lower(),m) for m in months)

def valid_month(month):
if month:
short_month = month[:3].lower()
return month_abbvs.get(short_month)

class MainPage(webapp2.RequestHandler):

def write_form(self, error=""):
self.response.out.write(form % {"error": error})

def get(self):
self.write_form()
self.valid_year(year)
self.valid_day(day)
self.valid_month(month)


def post(self):
user_month = valid_month(self.request.get('month'))
user_day = valid_day(self.request.get('day'))
user_year = valid_year(self.request.get('year'))
if not (user_month and user_day and user_year):
self.write_form("That doesn't look valid to me, friend.")
else:
self.response.out.write("Thanks! That's a totally valid day!")

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

最佳答案

在方法“get”中,您调用方法 valid_year()、valid_day()、valid_month(),因此:

1)您在没有任何参数的情况下调用它,但在方法声明中您声明有参数 valid_year(year), valid_day(day), valid_month(>月),因此如果您不带参数调用它,则会导致错误。

2)我认为你的“get”方法应该如下所示:

def get(self):
self.write_form()

执行 get 方法时,您不会收到任何参数/数据,因此没有任何内容需要验证。

关于Python 应用程序错误(Udacity),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31958785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com