云朵颂 发表于 2018-1-18 17:48:57

010课后习题,两种方法,都不太明白

题目如图:
member=['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'秋舞斜阳',88]

方法一:
count = 0
length = len(member)
while count < length:
    print(member, member)
    count += 2

方法二:   
   
for each in range(len(member)):
    if each%2 == 0:
      print(member, member)


上面两种方法,都不太明白是什么样子的实现逻辑{:10_266:}

像番茄加两个蛋 发表于 2018-1-18 19:11:43

你先要知道列表的元素是从0开始的,所以'小甲鱼','黑夜'等人名的位置是0,2,4,6,8
解析方法一:
member=['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'秋舞斜阳',88]
count=0 #定义一个变量用来控制索引的值
length=len(member)#计算这个列表的元素个数
while count<length:#设置循环条件,当索引值小于列表元素个数时循环
    print(member,member)#这里的member是索引列表中的元素,member就是member后面一个元素,注意这里的count+1并没有真的改变count的值哦!
    count+=2#这里之所以要每次+2是因为要改变count的值,第一次加后就是2,第二次就是4,第三次就是6,第四次就是8
解析方法二:
member=['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'秋舞斜阳',88]
length=len(member)#列表元素个数
for each in range(length):#遍历循环列表元素个数也就是0到10不包括10
    if each%2==0:   #是偶数的话执行下面语句,也就是0,2,4,6,8的时候
      print(member,member)#这里的each+1就是0,2,4,6,8,的时候加上1,就是each后面一个元素




页: [1]
查看完整版本: 010课后习题,两种方法,都不太明白