这个脚本的目标是提供在给定起始金额和年利率的情况下达到目标金额所需的年数。在
我得到错误:UnboundLocalError:赋值之前引用了局部变量“currentamt”
startamt = float(input("Starting Amount?: "))
targetamt = float(input("Target Amount?: "))
air = float(input("Annual Interest Rate? "))
currentamt = 0
year = 0
def main():
currentamt = startamt * air + currentamt
while currentamt < targetamt:
year = year + 1
print('year')
if __name__ == '__main__':
main()
除非将currentamt作为参数传入,否则主函数不知道它是什么。循环不会修改currentamt,因此它将无限循环。最后,您将打印“year”,它是一个字符串。如果你的循环正常工作,它最终会在控制台中打印“year”。相反,您需要打印
year
,它是包含年份的变量。参考以下解决方案。在相关问题 更多 >
编程相关推荐