for z in(“Ronaldo”,“Julio”):
inv =“Hi”+(z)+“Please”
我想打印“Hi Ronaldo Please”和“Hi Julio Please”但是当我输入“print(inv)它只打印最后一个时,为什么会这样?”
谢谢!
答案 0 :(得分:1)
在for x in y:
循环中,程序为y
中的每个值执行缩进块。在每次迭代中,您都可以通过名称x
访问该值。使用您的程序
for z in ("Ronaldo", "Julio"):
inv = "Hi " + (z) + " Please"
print(inv)
流程如下:
z = "Ronaldo"
"Hi " + (z) + " Please"
- >评估为"Hi Ronaldo Please"
inv = "Hi Ronaldo Please"
。从现在开始,inv的值为"Hi Ronaldo Please"
for
循环的下一轮,z = "Julio"
"Hi " + (z) + " Please"
- >评估为"Hi Julio Please"
inv = "Hi Julio Please"
。从现在开始,inv的值为"Hi Julio Please"
print(inv)
- 这将打印inv的当前值"Hi Julio Please"
。正如您所看到的,我们只运行了一次打印,并打印了inv
的最新值。相反,您希望在for循环中运行print,如下所示:
for z in ("Ronaldo", "Julio"):
inv = "Hi " + (z) + " Please"
print(inv)
使用这种结构,在for循环的每次运行期间,都会打印一些东西。