今天我尝试制作一个程序,询问用户他/她希望我总结的系列中有多少项。该系列将用于近似pi的值。这是我到目前为止的代码:
from math import pi
def pi_sum():
n = eval(input("How many terms do you want to sum: "))
for i in range(n):
denominator= 2.0 * i + 1
sign = (-1) ** i
numerator = 4
result = (4 * sign) /denominator
print(result)
print(sum(result))
pi_sum()
但是,此代码会生成错误消息:
File "C:/Users/Crisa/PycharmProjects/untitled/piprogram.py", line 14, in pi_sum
print(sum(result))
TypeError: 'float' object is not iterable
如果我的for循环生成浮点数,如何让python对我的for循环中的值求和?我被卡住了:/
答案 0 :(得分:3)
将每次迭代的结果添加到列表中:
myresults = []
for i in range(n):
...
myresults.append(result)
然后在最后,获得列表的总和以及所有结果:
print(sum(myresults))