有人可以向我解释“for循环”吗?

时间:2016-05-01 23:29:50

标签: python-3.x

for z in(“Ronaldo”,“Julio”):

inv =“Hi”+(z)+“Please”

我想打印“Hi Ronaldo Please”和“Hi Julio Please”但是当我输入“print(inv)它只打印最后一个时,为什么会这样?”

谢谢!

1 个答案:

答案 0 :(得分:1)

for x in y:循环中,程序为y中的每个值执行缩进块。在每次迭代中,您都可以通过名称x访问该值。使用您的程序

for z in ("Ronaldo", "Julio"):
    inv = "Hi " + (z) + " Please"
print(inv)

流程如下:

  1. z = "Ronaldo"
  2. 评估"Hi " + (z) + " Please" - >评估为"Hi Ronaldo Please"
  3. inv = "Hi Ronaldo Please"。从现在开始,inv的值为"Hi Ronaldo Please"
  4. for循环的下一轮,z = "Julio"
  5. 评估"Hi " + (z) + " Please" - >评估为"Hi Julio Please"
  6. inv = "Hi Julio Please"。从现在开始,inv的值为"Hi Julio Please"
  7. for循环结束 - 我们涵盖了所有值。
  8. 运行print(inv) - 这将打印inv的当前值"Hi Julio Please"
  9. 正如您所看到的,我们只运行了一次打印,并打印了inv的最新值。相反,您希望在for循环中运行print,如下所示:

    for z in ("Ronaldo", "Julio"):
        inv = "Hi " + (z) + " Please"
        print(inv)
    

    使用这种结构,在for循环的每次运行期间,都会打印一些东西。