Python For循环仅增加两个变量中的一个
我希望结果显示每年加利息后的总金额,但它只会增加一年,而不会增加金额。为什么?Python For循环仅增加两个变量中的一个,python,python-3.x,Python,Python 3.x,我希望结果显示每年加利息后的总金额,但它只会增加一年,而不会增加金额。为什么? while True: try: investment = float(input('How much to invest : ')) interest = float(input('Interest rate : ')) break except ValueError: "Please enter a valid number" fo
while True:
try:
investment = float(input('How much to invest : '))
interest = float(input('Interest rate : '))
break
except ValueError:
"Please enter a valid number"
for year in range(10):
money = investment + (investment * interest)
print("Total money in year {} : {}".format((year+1), money))
逻辑错误。您的
投资
变量没有在循环中的每一轮中分配。听起来您需要累积利息:
for year in range(10):
investment += (investment * interest)
print("Total money in year {} : {}".format((year + 1), investment))
money
在循环的每次迭代中都会重新计算,但不会更改,因为investment
和interest
一旦定义就不会更改money=investment+(investment*interest)
之后添加一行设置investment=money