Python,如何找到这些元素的总和?

Python, how I can find sum of this elements?

求下一行数字的n个元素之和:
1、-0.5、0.25、-0.125 ...
从键盘输入元素的个数(n)。

sum([float(i) for i in input().split(', ')])

假设用户输入一个以逗号分隔(尾随 space)的数字列表,这些数字可以解析为有效的浮点数。

这会起作用:

row = "1, -0.5, 0.25, -0.125, 0.5, -0.14, 0.2, -0.34"
n = int(input())
nth_sum = sum(map(float, row.split(",")[:n]))

您正在寻找这样的东西吗?

l = []
for i in range(int(input())):
    if i%2 ==0:
        l.append(1/2**i)
    else:
        l.append(-(1/2**i))
print(sum(l))

分辨率:

你应该使用几何级数求和的公式,这是迄今为止最有效的方法:

n = int(input('number: '))
result = -2 * (1 - (-1/2) ** n) / (1 + 1/2) + 2

解释:

几何级数的总和由公式定义:

其中:

  • Sn = n 项之和
  • n = 项数
  • a1 = 第一学期
  • r =公比

所提供的系列可以被认为是 r = -1/2a1 = -2 跳过第一项的交替系列。分子简化为 -2 * (1 - (-1/2) ** n),分母简化为 (1 + 1/2),由于我们不希望第一项出现在末尾,我们通过在末尾添加 2 来取消它 + 2