相同类型的程序在 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):
同时用它来存储累计和。这两个用途冲突。更改变量的名称。
所以我得到了两个类似的程序:
程序 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):
同时用它来存储累计和。这两个用途冲突。更改变量的名称。