我在Pokemon中为一个损害计算器编写了一个代码,如果在html表单中给定了所需的数据,它将返回一个计算值(基于损害公式)。我确信html表单是正确的,但是计算器本身将返回0.0作为输出,尽管cgi.FieldStorage公司()已启用。在
本质上,我试图返回一个计算值,但我认为我对缩进的了解不足导致我的函数返回0.0 代码发布在pastebin上:Calculator Code
这个问题出现在我的getdamage()函数(超过1000行的函数)中。开头的变量是空字符串或0,如果html表单已提交,并且所有内容都已填写,则变量将添加数据。我还尝试在函数本身内运行一个计算(第129-131行):
if t in moveList:
basedamageindex += ((int((moveList.index(t)))) +3)
basedamage+=(int(moveList[basedamageindex]))
写这三行是为了获得“base damage”,它是包含split.csv文件的moveList变量中的一个数值。在
^{pr2}$这行代码位于pastebin的第133行。这是基于表格中获得的所有数据计算的损伤。以下几行:134-1523是为了检查一个动作的“有效性”。例如,电是非常有效的水,所以伤害将乘以2。这些都是使用前面函数的if语句:checkmovetype(x)、typea(x)和typeb(x),并检查在html表单中填写的pokemon的类型。然后将第133行相应地相乘。 代码最终返回损害和返回损害,代码的最后三行:
print '''<html><body>The damage output should be about ~'''
print getdamage()
print '''</body></html>'''
用来打印损坏情况。在
总之,当我提交html表单时,计算器将只返回0,但是应该返回一个计算值,尽管所有的区域都被填充了。我觉得这可能是我缩进的问题。有人能检查一下我的缩进是否有误吗?在
非常感谢。在
目前没有回答
相关问题 更多 >
编程相关推荐