胖豆lucky 发表于 2018-12-2 23:31:34

012 课后习题

list1 = []
for x in range(10):
    for y in range(10):
      if x%2 == 0:
            if y%2 != 0:
                list1.append((x, y))

这个代码该怎么理解?for 是对应哪个 if 吗?

Joke丶叔叔 发表于 2018-12-2 23:56:55

双层for循环,内层循环判断x为偶数,y为奇数。两个条件同时满足时list1中append 偶数+奇数组合

相当于给list中加入了所有10以内偶数+奇数的组合

人随世俗变 发表于 2018-12-3 00:12:08

并不是if对应哪个for,上面的两个for成嵌套关系,下面的if是在第二个for里面执行的,与第一个没有直接关系。
list1 = []
for x in range(10):#X从0到9依次输出
    for y in range(10): #当X输出一个时,y都从0到9输出
      if x%2 == 0:   #判断X是否为偶数
            if y%2 != 0: #判断X是否为奇数
                list1.append((x, y))

我大体描述下运行过程:①首先输出一个X=0,其次输出Y=0,判断X是否偶数,判断Y是否奇数2.输出Y=1,判断X是否偶数,判断Y是否奇数。。。。。。   就是这样的过程。相当于10*10 = 100个循环    当一个X的值,就对应有10个Y值
页: [1]
查看完整版本: 012 课后习题