我是编码的新手,在“python”
中偶然发现了这些代码行a = [1,2,3,4,"hello"]
for i in a:
try:
print(i)
i + 1
print (("i is : %d") %(i))
except:
print("nope " + i + " is a string")
输出结果为:
1
i is : 1
2
i is : 2
3
i is : 3
4
i is : 4
hello
nope hello is a string
1)我的问题是为什么我不会增加? 2)为什么在第二个打印声明中不是i = 2 i? 3)“i”是否会增加?
答案 0 :(得分:1)
因为你没有过度编写变量。你想要的是:
i + = 1
您的代码实际上是在计算i+1
,但它不会更新变量。
但是for循环的想法不是必须自己增加变量。它在下一次迭代时递增。你想要一个更复杂的迭代模式,你最好先创建它。