【问题标题】:SImple for loop--- I don't get it简单的 for 循环 --- 我不明白
【发布时间】:2018-10-31 03:33:31
【问题描述】:

我真的不明白为什么会给出下面的输出。

  for i in 'ab':
      for x in 'xy':
          print(i,x)

为什么输出会给出

  a x
  a y
  b x
  b y

【问题讨论】:

  • 这正是我所期望的。哪一部分你不明白?你期望它带来什么?
  • 这里有很多东西会让初学者感到困惑。事实上,字符串是可迭代的,for 循环中的变量赋值,一般的嵌套循环,print 输出中的隐含空格等等。您能否具体说明您发现不清楚的地方?
  • 我认为它会在单独的行上给出 x b y
  • 但 Mayank 的回答澄清了我的误解

标签: python python-3.x


【解决方案1】:

它是这样工作的:

for i in 'ab':
      for x in 'xy':
          print(i,x)

第一个for循环for i in 'ab':,第一次迭代中i的值将是a,在内部循环for x in 'xy'中,第一次迭代中x的值将是x

所以,打印语句打印a x 同样,在第二次迭代中,i 仍然是 axy,所以它打印出a y

现在,对于第 3 次迭代,i 变为 bx(内部循环变量)变为 x,因此,它打印 b x

同样,它在第 4 次迭代中打印 b y

如果这有帮助,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多