Python 试图找出使用Django计算数据库中字符串的语法
我有一个关于方法评估的问题,我最初想创建一个单独的 Def处理来自表单的用户输入和回答。。问题是该方法不起作用,因为我不知道如何将局部变量传递给另一个def,因为在另一个函数中,随机值无论如何都是不同的 从本质上讲,ran_puzz从数据库中提取一个随机拼图,其值如“2+2”等 rand\u puzz=puzzs.objects.get(id=random\u index.puzz) 所以我想,因为我不知道如何将rand_puzz传递给另一个def,所以我决定将变量和逻辑保留在def中,称为“play”,并返回多个值,如“message and ran_puzz” 如果看到行“If eval(rand_puzz)=user_sub_ans;”//这会导致语法错误 网址: 观点: def播放(请求) Html:用户输入谜题答案的表单中的一段代码Python 试图找出使用Django计算数据库中字符串的语法,python,django,Python,Django,我有一个关于方法评估的问题,我最初想创建一个单独的 Def处理来自表单的用户输入和回答。。问题是该方法不起作用,因为我不知道如何将局部变量传递给另一个def,因为在另一个函数中,随机值无论如何都是不同的 从本质上讲,ran_puzz从数据库中提取一个随机拼图,其值如“2+2”等 rand\u puzz=puzzs.objects.get(id=random\u index.puzz) 所以我想,因为我不知道如何将rand_puzz传递给另一个def,所以我决定将变量和逻辑保留在def中,称为“p
<form action="/play/" method = "get">
<table style="margin-left:auto; margin-right:auto; width:auto;">
<table style="margin-left:auto; margin-right:auto; width:auto; border:solid 1px">
<tr><td><label for="username">Question:</label></td>
<td>{{rand_puzz}}</td></tr>
<tr><td><label for="answer">Answer:</label></td>
<td><input type="number" name="answer" value="" id="answer"></td></tr>
<td> The answer is: {{message}}</td></tr>
<tr><td></td><td><input type="submit" value="Submit"/></td></tr>
</table>
</table>
</form>
问题:
{{rand_puzz}}
答复:
答案是:{{message}}
我将非常感谢你的帮助 可能是这样的:
if eval(rand_puzz)== user_sub_ans:
message = 'correct'
else:
message = 'incorrect'
puzzle
字段没有从任何用户输入中获取其值,我希望如此。如果语句是正确的,而另一个语句是完全错误的,您是如何获得一个的值的?这些是代码段。我只是不确定eval的语法。。。它只是一个函数。就像rand函数一样,我花了好几天的时间才发现我必须将rand函数导入DJANGO才能工作,我很好奇eval为什么会给出语法错误。random
是一个模块<代码>如果
是一条语句。否,这些谜题是已经插入数据库的操作字符串,它们由随机生成的Id从数据库中随机抽取,该Id用于输出到html页面,例如问题:2+2答案:[来自用户的表单输入:'2']然后使用表单输入的get函数将其与eval(2+2)进行比较。如果正确,就这样做,否则就那样做。但是我无法使用语法
<form action="/play/" method = "get">
<table style="margin-left:auto; margin-right:auto; width:auto;">
<table style="margin-left:auto; margin-right:auto; width:auto; border:solid 1px">
<tr><td><label for="username">Question:</label></td>
<td>{{rand_puzz}}</td></tr>
<tr><td><label for="answer">Answer:</label></td>
<td><input type="number" name="answer" value="" id="answer"></td></tr>
<td> The answer is: {{message}}</td></tr>
<tr><td></td><td><input type="submit" value="Submit"/></td></tr>
</table>
</table>
</form>
if eval(rand_puzz)== user_sub_ans:
message = 'correct'
else:
message = 'incorrect'