鱼C论坛

 找回密码
 立即注册
查看: 836|回复: 10

[已解决]《零基础入门python》第010讲动动手2

[复制链接]
发表于 2018-3-20 19:46:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
麻烦大神们能不能帮我解释一下,为什么这道题里面的print(member[count], member[count+1])就能输出题目里的样子呢?
  1. 方法一:
  2. count = 0
  3. length = len(member)
  4. while count < length:
  5.     print(member[count], member[count+1])
  6.     count += 2

  7. 方法二:   
  8.    
  9. for each in range(len(member)):
  10.     if each%2 == 0:
  11.         print(member[each], member[each+1])
复制代码


非常感谢大家的帮助
最佳答案
2018-3-20 20:02:02
因为member里存放的形式是这样的 member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'狄舞斜阳',88]

count的初始值为0,执行print(member[count], member[count+1]),相当于输出member中索引值为 0 和 1 的元素

也就是输出了 小甲鱼 88(一块输出的两个内容默认中间以空格分开),然后执行了count + 2,然后继续在下一行

输出索引值为 2 和 3 的元素,也就是 黑夜 90   依次输出,所以就是那样的形式,第二段代码情况类似。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-20 19:56:09 | 显示全部楼层
题目是什么样子呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-20 19:59:36 | 显示全部楼层
member = [1,2,3,4,5,6,7,8]

count = 0
member[count ] = member[0] = 1
member[count+1] = member[0 + 1] = member[1] = 2

count += 2

count = 2
member[count ] = member[2] = 3
member[count+1] =member[2 + 1] = member[3] = 4

................

清楚明白??????????????
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-20 19:59:54 | 显示全部楼层
首先两种方法都是隔2截取,即把人名和分数分开,因此member[each], member[each+1]表示每组人名加分数
print结束自带换行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-20 20:02:02 | 显示全部楼层    本楼为最佳答案   
因为member里存放的形式是这样的 member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'狄舞斜阳',88]

count的初始值为0,执行print(member[count], member[count+1]),相当于输出member中索引值为 0 和 1 的元素

也就是输出了 小甲鱼 88(一块输出的两个内容默认中间以空格分开),然后执行了count + 2,然后继续在下一行

输出索引值为 2 和 3 的元素,也就是 黑夜 90   依次输出,所以就是那样的形式,第二段代码情况类似。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-20 23:11:12 | 显示全部楼层
第一点:
如果定义 mem = [a,b,c,d,e]  那么mem[0] 输出的是a  ,mem[1] 输出的是b     以此类推
而题目,事先定义了 member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'狄舞斜阳',88]
那么 member [0] 输出的就是 '小甲鱼',member[1] 输出的就是 88     以此类推
第二点:
题目事先定义了length = len(member)   这个len()是能求出我们member列表的元素个数,一共是10个
那么实际上 length = 10, count =0
进入while循环后 先输出  member [0]和 member [1]
然后count+=2  在输出    member [2]和member [3]   一次类推直到10推出循环
望采纳 ,谢谢!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 14:25:08 | 显示全部楼层
Zmynx_2017 发表于 2018-3-20 20:02
因为member里存放的形式是这样的 member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'狄舞斜阳',88]

...

很感谢您的答疑解惑,确认晚了,十分抱歉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 14:25:54 | 显示全部楼层
°蓝鲤歌蓝 发表于 2018-3-20 19:56
题目是什么样子呢?

谢谢谢谢您的回复,楼上给出了答案,谢谢您
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 14:26:32 | 显示全部楼层
ba21 发表于 2018-3-20 19:59
member = [1,2,3,4,5,6,7,8]

count = 0

现在明白了,谢谢您,回复晚了不好意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 14:27:21 | 显示全部楼层
塔利班 发表于 2018-3-20 19:59
首先两种方法都是隔2截取,即把人名和分数分开,因此member[each], member[each+1]表示每组人名加分数
pri ...

谢谢您的答疑回复,确认晚了,不好意思哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 14:28:38 | 显示全部楼层
lh8877210 发表于 2018-3-20 23:11
第一点:
如果定义 mem = [a,b,c,d,e]  那么mem[0] 输出的是a  ,mem[1] 输出的是b     以此类推
而题目, ...

非常感谢您的答疑,解释的很详细了,最终采取了楼下的解释,不好意思啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 00:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表