相同类型的程序在 Python 中给出不同的输出

Same type of programs giving different output in Python

所以我得到了两个类似的程序:

程序 1:

n = int(input())
mylist = []
x=0
for i in range(n):
    t = input()
    if '++' in t:
        x+=1
    else:
        x-=1
print(x)

程序 2:

n = int(input())
mylist = []
for i in range(n):
    mylist.append(input())
x=0
for x in range(n):
    if '++' in mylist[x]:
        x+=1
    elif '--' in mylist[x]:
        x-=1
print(x)

输入:

2
--X
--X

程序 1 正在打印“-2”,而程序 2 正在打印“0”。
我找不到输出变化的原因。

感谢您的帮助!
PS: 这是我在这个论坛上的第一个问题,如果我做错了什么请指导我。

在程序 2 中,您使用 x 作为 for 循环控制变量:

for x in range(n):

同时用它来存储累计和。这两个用途冲突。更改变量的名称。