测试能通过,但是答案不对,这个错误在哪

测试都能成功,但是答案算出来不对,是为啥
题目
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。

输入格式:
输入在一行中给出一个正整数N。

输出格式:
在一行中输出部分和的值,结果保留三位小数。

输入样例:
5
输出样例:
0.917
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

我的答案

img

img

特点:
1、索引从1开始的话,奇数位置为正数,偶数位置为负数
2、分子:正常的自然序列,1、2、3...n
3、分母:2 * 分子 - 1
代码如下:

n = input('请输入计算到第几项:')  
num_list = []
for i in range(1, int(n) + 1):
    num = i / (2 * i - 1)
    if i % 2 != 0 :
        num_list.append(num)
    else:
        num_list.append(-num)
        
print(sum(num_list))

有帮助的话,请点采纳该答案~

2*i+1要用括号括起来呀,否则先算乘除后算加减,能对才怪