Python 嵌套循环数学问题

Python 嵌套循环数学问题,python,math,Python,Math,也许我没有看到问题是什么,因为我整天都在思考这个问题,而且我已经得到了帮助(但我认为我自己可以得到另一部分的帮助。)我正在努力得到帮助 Day Salary Total Pay ______________________________ 1 .01 .01 2 .02 .03 3 .04 .07 4 .08 .15 5 .16

也许我没有看到问题是什么,因为我整天都在思考这个问题,而且我已经得到了帮助(但我认为我自己可以得到另一部分的帮助。)我正在努力得到帮助

Day      Salary     Total Pay
______________________________
1         .01         .01
2         .02         .03
3         .04         .07
4         .08         .15
5         .16         .31
etc
但我对数学中的总工资部分很难理解

for days in range(1, days + 1):
      for days in range(1, days + 1):
          for days in range(1, days +1):
              salary = .01*2**(days-1)
              total_pay = salary*.01*2**(days-1)    

到目前为止,这就是我所知道的,但我一辈子都无法把数学搞清楚。我可以接近我所拥有的,但不是我所需要的。其他一切都有效,但总工资除外。如果您能帮我解决这样一个简单的问题,我将不胜感激。

工资总额是之前的工资总额加上当天的工资总额

total_pay = 0
for days in range(1, days + 1):
    salary = .01*2**(days-1)
    total_pay += salary

一个简单的递归解决方案:

>>> def total_pay(day):
...     if day == 1:
...         return 0.01
...     return 0.01*2**(day-1)+total_pay(day-1)

>>> total_pay(2)
0.03
>>> total_pay(3)
0.07
>>> print("{0:.2f}".format(total_pay(5)))
0.31

非常感谢你。如果您不介意再次帮助我,我正在尝试使用$格式化相同的输出,并且只有小数点后2位的答案,例如0.15,当我尝试这种格式时,我得到原始答案加上缩短的答案,而我只需要缩短的答案。当格式只接受2?时,我总是得到一个关于3个参数的错误??