NameError: name 'years' is not defined
NameError: name 'years' is not defined
python 编程新手,执行时我得到:
print_target_output(本金、利率、年限)
NameError:名称 'years' 未定义
我想做的是计算年数并打印出来
知道我该如何解决这个问题吗?
def calculate_years_to_target(principal, rate, target):
years = math.log(target/principal) / 4*(math.log(1 + rate/4))
return years
def print_target_output(principal, rate, years):
print(principal,rate,years)
#MAIN
def main():
print_intro()
principal,rate,target=get_target_input()
calculate_years_to_target(principal,rate,target)
print_target_output(principal,rate,years)
调用函数时需要将返回结果赋值给变量。如果您不这样做,它将不会存储在您的函数范围之外。
def main():
print_intro()
principal,rate,target=get_target_input()
## Assign the returned result to a variable ##
years = calculate_years_to_target(principal,rate,target)
print_target_output(principal,rate,years)
为了进一步学习,花一些时间更好地理解作用域以及何时 can/cannot 访问您在代码中分配的变量可能会有好处。
在 main
函数中,year
没有被赋值。
更新以下行。
years = calculate_years_to_target(principal,rate,target)
python 编程新手,执行时我得到: print_target_output(本金、利率、年限) NameError:名称 'years' 未定义
我想做的是计算年数并打印出来
知道我该如何解决这个问题吗?
def calculate_years_to_target(principal, rate, target):
years = math.log(target/principal) / 4*(math.log(1 + rate/4))
return years
def print_target_output(principal, rate, years):
print(principal,rate,years)
#MAIN
def main():
print_intro()
principal,rate,target=get_target_input()
calculate_years_to_target(principal,rate,target)
print_target_output(principal,rate,years)
调用函数时需要将返回结果赋值给变量。如果您不这样做,它将不会存储在您的函数范围之外。
def main():
print_intro()
principal,rate,target=get_target_input()
## Assign the returned result to a variable ##
years = calculate_years_to_target(principal,rate,target)
print_target_output(principal,rate,years)
为了进一步学习,花一些时间更好地理解作用域以及何时 can/cannot 访问您在代码中分配的变量可能会有好处。
在 main
函数中,year
没有被赋值。
更新以下行。
years = calculate_years_to_target(principal,rate,target)