for 循环变量要用i等,不要用和n相同的:
n = int(input())
m=-1
s=0
flag=-1
for i in range(1,n+1):
flag *= -1
m += 2
s += flag*i/m
print('%.3f'%s)
还有,观察m,flag的变化,可以省掉不必要的变量
相当于累加:(-1)的几次方*整数列/奇数列
n = int(input())
s=0
for i in range(1,n+1):
s += (-1)**(i+1)*i/(2*i-1)
print('%.3f'%s)