ylyl 发表于 2017-2-27 17:45:02

python 第十讲课后题

方法一:
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]
count = 0
length = len(member)
while count < length:
    print(member, member)
    count += 2

方法二:   
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]   
for each in range(len(member)):
    if each%2 == 0:
      print(member, member)

这两种方法里print那一行不是很明白,好像小甲鱼没讲过这样用。我猜测第二个是先print member中的每一次迭代的each,然后print下一代的each,然后循环,应该是这个意思吧?萌新自己瞎想的。第一种真想不通了。
另外,各位大佬,我看这里悬赏问题好像都很6的样子,我在这问怎么有点蠢的感觉。。。。

隨鈊乄鎍慾 发表于 2017-2-27 17:45:03

第一个print(member,member)实际上就是通过count+=2这个变量的不断变化来实现对member[]数组的的各个元素的读取。每循环一次就读取下标为count和coutn+1的这两个元素并打印出来。直到count的值不再小于length时,就退出循环。丛而实现了对数组的全部元素打印。最后学习就是一个过程,你学得越多问题也会越多这很正常,只要你把不懂的都搞懂,一步一个脚印别着急总有一天你会发现你会越学越简单的。

madaobl 发表于 2017-2-27 18:06:39

第二个循环each是在len(member)范围里的,if是检验each是不是偶数,是偶数的话,就打印member中以each和each+1为下标的元素,就是从0开始,打印每个偶数下标的内容和其下一项的内容

编程新血 发表于 2017-2-27 19:12:40

类似字典输出一个项,只不过用列表实现,每2个元素一组。

使用格式:列表名[索引位]来访问列表里的元素。

print的那一行,是显示:索引位的元素与索引位+1的元素。

方法1里用count += 2来控制索引位,每次迭代,步进2。

方法2里用each%2 == 0条件来控制执行显示命令,余数为0的情况才会执行print命令,为1的时候无操作。

xxpythonxx 发表于 2017-2-28 13:09:48

建立member列别之后试一下 member,member就明白了。
我刚刚做完第十个,哈哈~加油。

lubcat 发表于 2017-2-28 13:51:13


方法二:   
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]   
for each in range(len(member)):
    if each%2 == 0:
      print(member, member)
满足if 条件成立,只有列表中索引值为偶数的项(0,2,4,6,8)
依次打印这些项及列表的后一位的数值

比如,each= 0时,if条件成立,打印member和member
         each = 1 不成立   未进入if内
         each =2if 条件成立,打印memeber和member
……………………依次类推
      

mustang 发表于 2017-2-28 14:16:16

方法一:
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]   
count = 0                                                                                       
length = len(member)                                              #取列表的长度,共10个   代号为:
while count < length:
    print(member, member)         #打印member和member
    count += 2                                                
# count += 2 为count自加2的意思,count为0,所以进入下一次循环时count的值为2,打印出member和member,然后count再加2,则为4,依次循环,直至count为10则跳出循环


方法二:   
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]   
for each in range(len(member)):
    if each%2 == 0:
      print(member, member)
#依次打印member, member
                member, member
                member, member
                member, member
                member, member

#主要是要了解列表了是从    0到9   而不是   1到10

ylyl 发表于 2017-2-28 15:44:08

mustang 发表于 2017-2-28 14:16
方法一:
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]   
count = 0...

谢谢你写了这么多,我已经明白了,each和each+1每次指向的数都是不同的,如楼上几位说的,是类似于下标一样的。{:5_91:}

mustang 发表于 2017-2-28 16:18:49

ylyl 发表于 2017-2-28 15:44
谢谢你写了这么多,我已经明白了,each和each+1每次指向的数都是不同的,如楼上几位说的,是类似于下标一 ...

其实我也是新手,所以回答这个也是对学习内容的一个总结{:5_109:}
页: [1]
查看完整版本: python 第十讲课后题