/ / Znalezienie sumy. TypeError: obiekt "float" nie jest iterowalny - python, sum, typeerror

Znalezienie Suma. TypeError: obiekt "float" nie jest iterowalny - python, sum, typeerror

Dziś próbowałem stworzyć program, który zapytałby użytkownika, ile elementów serii chciał, abym sumował. Ta seria byłaby używana do przybliżenia wartości pi. Oto mój kod do tej pory:

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()

Jednak ten kod generuje komunikat o błędzie:

File "C:/Users/Crisa/PycharmProjects/untitled/piprogram.py", line 14, in pi_sum
print(sum(result))
TypeError: "float" object is not iterable

W jaki sposób można uzyskać Pythona, aby podsumować wartości w mojej pętli for, jeśli moja pętla for generuje floats? Utknąłem :/

Odpowiedzi:

4 dla odpowiedzi № 1

Dodaj wyniki każdej iteracji do listy:

myresults = []
for i in range(n):
...
myresults.append(result)

Następnie na końcu otrzymasz sumę listy ze wszystkimi wynikami:

print(sum(myresults))