我创建了一个简单的版税计算器,但我现在要做的是让它分别计算x次,如下所示:
x = x + (x * .10)
我需要它以递增的方式重复进行并为下一次迭代设置x的新值。所以说我想打印出10次的结果,每次都将新的总数添加到等式中,所以例如,如果你以1.00的数量开始,这些结果可能会出现:
1.10
1.21 (1.10 + an extra 10 %)
1.33
1.46
等等,无论你需要多少次。以下是我的尝试,我坚持这一点。我也在考虑让用户输入初始金额。
for _ in range(10):
new_total = total + (total * .10)
print new_total
我怎样才能实现这一目标?这只打印第一次迭代,而不是全部10次。请记住,总变量由在此段代码之前工作的脚本的其他部分确定。
答案 0 :(得分:3)
只需将new_total
的使用替换为原始total
:
for _ in range(10):
total = total + (total * .10)
print total
发生这种情况的原因是,虽然在第一次迭代中您将new_total
的值设置为已处理的值,但实际上并未更改total
,因此每次都会给出相同的结果。
使用Python 2.7进行演示(total
从54.13
开始):
59.543
65.4973
72.04703
79.251733
87.1769063
95.89459693
105.484056623
116.032462285
127.635708514
140.399279365