我收到第27行所说的错误,总数未定义。为了解决这个问题,我将全局添加到第7行和第12行,所以我尝试在第17行添加它,它仍然给我一个错误。知道如何解决这个问题吗?关于我的代码的任何其他提示或信息也非常感谢。我对编码很新。我在使用Python
import math
import sys
print("King's BMI Calculator")
def h():
global height
height=float(input("Please enter student's height in inches:"))
return height
def w():
global weight
weight=float(input("Please enter student's weight in pounds:"))
return weight
def bmi():
global total
total=((str(weight) * 703)/(str(height) * str(height)))
return total
def printbmi():
print(name + "'s BMI Profile")
print("Height:", str(height), "inches")
print("Weight:", str(weight), "lbs")
print("BMI Index:" + str(float(round(total, 1))))
return
def main():
h()
w()
printbmi()
while True:
name = input("Please enter student's name or press 0 to quit:")
if name == "0":
break
main()
答案 0 :(得分:0)
修改全局变量时需要使用global
。只要定义了变量,就不必在读取变量时使用它。
在这种情况下,您无法在任何地方定义总计,因为您的代码会调用w
和h()
以及printbmi()
,但似乎没有调用{{1 }},这是您将值存储到bmi()