NameError:未定义名称“年”

2024-10-17 06:22:36 发布

您现在位置:Python中文网/ 问答频道 /正文

python编程新手,在执行时我得到: 打印目标输出(本金、利率、年数) NameError:未定义名称“年”

我想做的是计算年份并打印出来

你知道我该怎么解决这个问题吗

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)

Tags: tologprincipaltarget目标outputratedef
2条回答

main函数中,year没有赋值。 更新下一行

years = calculate_years_to_target(principal,rate,target)

调用函数时,需要将返回的结果分配给变量。如果不这样做,它将不会存储在函数范围之外

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)

为了进一步学习,花一些时间更好地理解作用域以及何时可以/无法访问代码中指定的变量可能会有好处

RealPython

相关问题 更多 >