Python Can';t在webapp2表单中不包含多个输入
我尝试向一个工作示例()添加一个输入(文本)字段,结果它坏了。我的Python代码是:Python Can';t在webapp2表单中不包含多个输入,python,html,webapp2,Python,Html,Webapp2,我尝试向一个工作示例()添加一个输入(文本)字段,结果它坏了。我的Python代码是: import webapp2 def convert_temp(cel_temp): if cel_temp == "": return "" try: far_temp = float(cel_temp) * 9 / 5 + 32 far_temp = round(far_temp, 3) # round to three decimal
import webapp2
def convert_temp(cel_temp):
if cel_temp == "":
return ""
try:
far_temp = float(cel_temp) * 9 / 5 + 32
far_temp = round(far_temp, 3) # round to three decimal places
return str(far_temp)
except ValueError: # user entered non-numeric temperature
return "invalid input"
class MainPage(webapp2.RequestHandler):
def get(self):
cel_temp = self.request.get("cel_temp")
far_temp = convert_temp(cel_temp)
self.response.headers["Content-Type"] = "text/html"
self.response.write("""
<html>
<head><title>Temperature Converter</title></head>
<body>
<form action="/" method="get">
<fieldset>
Celsius temperature: <input type="text" name="cel_temp" value={}><br>
Dummy: <input type="text" name="dummy" value={}>
<input type="submit" value="Convert"><br>
Fahrenheit temperature: {}
</fieldset>
</form>
</body>
</html>""".format(cel_temp, far_temp))
routes = [('/', MainPage)]
my_app = webapp2.WSGIApplication(routes, debug=True)
导入webapp2
def转换温度(cel温度):
如果cel_temp==“”:
返回“”
尝试:
远温度=浮动(电池温度)*9/5+32
far_temp=四舍五入(far_temp,3)#四舍五入至小数点后三位
返回str(远温度)
除ValueError外:#用户输入的非数字温度
返回“无效输入”
类主页(webapp2.RequestHandler):
def get(自我):
cel_temp=self.request.get(“cel_temp”)
远温度=转换温度(cel温度)
self.response.headers[“内容类型”]=“文本/html”
self.response.write(“”)
温度转换器
摄氏温度:
笨蛋:
华氏温度:{}
“.”格式(cel\u temp,far\u temp))
路由=[('/',主页]
my_app=webapp2.WSGIApplication(路由,调试=True)
新行是以“Dummy”开头的行。代码在我输入之前一直有效,现在它抛出了一个内部服务器错误。我没有从HTML文档中得到任何线索,因此我不确定从这里尝试什么。这是因为
格式的工作方式。您需要在末尾提供正确数量的参数,以便使用一个参数匹配所有{}
。我没有测试它,但这应该可以,注意空字符串作为第三个参数,它应该匹配第三个{}
:
self.response.write("""
<html>
<head><title>Temperature Converter</title></head>
<body>
<form action="/" method="get">
<fieldset>
Celsius temperature: <input type="text" name="cel_temp" value={}><br>
Dummy: <input type="text" name="dummy" value={}>
<input type="submit" value="Convert"><br>
Fahrenheit temperature: {}
</fieldset>
</form>
</body>
</html>""".format(cel_temp, far_temp, "")
self.response.write(“”)
温度转换器
摄氏温度:
笨蛋:
华氏温度:{}
“.format(cel\u temp,far\u temp,”)
Nb.标签不在原始示例中。我将它们放进去看看是否可以修复。