def get_age():
age = int(input())
if age < 18 or age > 75:
raise ValueError('Invalid age.')
return age
def fat_burning_heart_rate(age):
heart_rate = (220 * 0.70) - age
return heart_rate
if __name__ == "__main__":
try:
heart_rate = fat_burning_heart_rate(age)
age = get_age()
print('Fat burning heart rate for a', age, 'year-old:',
heart_rate, 'bpm')
except ValueError as e:
print(e)
print('Could not calculate heart rate info.')到目前为止,我遇到的主要问题是,当我运行这段代码时,它会生成一个名称错误,告诉我'age‘没有定义。当我尝试分配heart_rate =fat_burning_heart_rate(年龄)时,就会出现这种情况。我怀疑这与我传递函数参数的方式有关。但是我能做些什么来修复它呢?
发布于 2020-04-21 13:35:26
def fat_burning_heart_rate(age):
heart_rate = (220 * 0.70) - age
if age < 18 or age > 75:
raise ValueError('Invalid age.')
return heart_rate, age
if __name__ == "__main__":
try:
age = int(input("Input age: "))
heart_rate, age = fat_burning_heart_rate(age)
print('Fat burning heart rate for a', age, 'year-old:',
heart_rate, 'bpm')
except ValueError as e:
print(e)
print('Could not calculate heart rate info.') 您不需要get_age()。您可以将该代码添加到fat_burning_heart_rate()中。
https://stackoverflow.com/questions/61336073
复制相似问题