KONGYIYAO 发表于 2020-6-23 21:56:42

关于for in循环的理解问题

请问这个代码
list1 = []
for x in range(10):
    for y in range(10):
      if x%2 == 0:
            if y%2 != 0:
                list1.append((x, y))

我知道for x in range(10)就是历遍0-10。
比如第一次循环时X=0,
但这个函数里面又有一个for y in range(10):
也就是在X=0下面又历遍Y=0到Y=10吗?
X=0时,Y=0 然后Y=1.....Y=10;
X=1时,Y=0 然后Y=1.....Y=10;
依次类推。

    if x%2 == 0:
            if y%2 != 0:
的意思是 if (x%2 == 0)and( if y%2 != 0:)吗?

青出于蓝 发表于 2020-6-23 21:59:30

每遍历1次x就遍历10次y。

Twilight6 发表于 2020-6-23 22:02:25

本帖最后由 Twilight6 于 2020-6-23 22:10 编辑

我知道for x in range(10)就是历遍0-10。

第一句话就错了哈,是遍历 0 ~ 9,range 不包含结尾的值哈

但这个函数里面又有一个for y in range(10):
也就是在X=0下面又历遍Y=0到Y=10吗?
你理解的没错哈,每 for 循环一次,要将 for 循环代码内的全部执行完毕才可进行下一次的 for 循环[

if x%2 == 0:
            if y%2 != 0:
的意思是 if (x%2 == 0)and( if y%2 != 0:)吗?

是的,但是你这个代码就有语法错误了,不能在写 if而且 冒号要写在 条件语句结尾正确写法:

if (x%2 == 0) and (y%2 != 0):

青出于蓝 发表于 2020-6-23 22:02:55

最有两句if判断就是在x是双数(偶数)的前提下判断y是不是双数(偶数)。

青出于蓝 发表于 2020-6-23 22:03:26

欢迎追问,语言表述可能不太好{:10_254:}

KONGYIYAO 发表于 2020-6-23 22:35:48

青出于蓝 发表于 2020-6-23 22:02
最有两句if判断就是在x是双数(偶数)的前提下判断y是不是双数(偶数)。

谢谢谢谢,已经懂了。{:5_91:}

KONGYIYAO 发表于 2020-6-23 22:36:40

Twilight6 发表于 2020-6-23 22:02
第一句话就错了哈,是遍历 0 ~ 9,range 不包含结尾的值哈




懂了,回答的好详细。十分感谢

Twilight6 发表于 2020-6-23 22:39:36

KONGYIYAO 发表于 2020-6-23 22:36
懂了,回答的好详细。十分感谢

没事~~加油吧!
页: [1]
查看完整版本: 关于for in循环的理解问题