一些关于自己学习Python的经历的内容,遇到的问题和思考等,方便以后查询和复习。
声明:本人学习是在扇贝编程通过网络学习的,相关的知识、案例来源于扇贝编程。如果使用请说明来源。
第一关:列表初阶
练习: 十二钗名单
从金陵十二钗(students 列表)里面挑选 第 3 位 和 倒数第 4 位 同学,然后把她的名字打印到屏幕上吧。然后查找 贾惜春 在名单中是第几个名字,补全代码,让打印结果正确。
students = [
'林黛玉',
'薛宝钗',
'贾元春',
'贾探春',
'史湘云',
'妙玉',
'贾迎春',
'贾惜春',
'王熙凤',
'贾巧姐',
'李纨',
'秦可卿'
] #包含金陵十二钗名单的数列
print(students[2]) #第三名,正序是从0开始的
print(students[-4]) #倒数第四名,反向是从-1开始的
rank_xichun = students.index('贾惜春')
# 变量名是惜春的排序,这样可读性比较强,studens是数列名称,.index() 是索引,索引和数列之间是黑点.隔开,括号中的是要求其索引的元素。
print('贾惜春是第', rank_xichun + 1, '个名字')
字符串和数字混搭打印时,不同部分可以用逗号隔开。
print('贾惜春是第' + str(rank_xichun + 1) + '个名字')
# 最后一行各个部分也可以用+加号相连,但是要把rank_xichun+1变成串,因为它是数字和字符串之间不能直接相加,这样打印效果和前面用逗号隔开是一样的。
练习:要不要点名检查
最近大家上课都有点不积极,你想着如何让大家听讲得更认真。你决定抽查几个同学的随堂笔记。抽查规则如下:看该同学在 students 名单中是第几个名字,如果排名是奇数,就放进列表 notes 中。
现在你挑出林黛玉、史湘云、贾迎春、贾琏四个人,看看他们四个中,谁会被抽查到呢。
接下来,按照下面的步骤,动手写一个抽查程序吧:
创建一个 check_notes() 函数,参数为 name,代表学生姓名,作用是判定学生在 students 中的排名,如果是奇数,就打印 'xxx需要被检查' (xxx 在代码中根据具体姓名替换);
调用 check_notes 函数,对林黛玉、史湘云、贾迎春、贾琏四人进行判断;
提示:你可能会用到求余数的运算,要使用 % 运算符。求 10 除以 3 的余数 x,Python 中写成 x = 10 % 3。
students = [
'林黛玉',
'薛宝钗',
'贾元春',
'贾探春',
'史湘云',
'妙玉',
'贾迎春',
'贾惜春',
'王熙凤',
'贾琏',
'贾巧姐',
'李纨',
'秦可卿',
'贾宝玉'
]
# 定义 check_notes() 函数
def check_notes(name):
# 用index() 方法获得姓名在全局变量students列表中的索引
# 注意实际排名数字比索引大1
rank = students.index(name) + 1 这个最初没有想起来如何用
# 判断rank能不能被2整除,不能的话,rank就是奇数
if rank % 2 == 1:
print(name + '需要被抽查')
# 调用函数,判断四位同学是否会被抽查
check_notes('林黛玉')
check_notes('史湘云')
check_notes('贾迎春')
check_notes('贾琏')
我抄的答案,结果还说和题目要求不一致的,真是奇怪了
联系小贝老师之后才发现,原来是“需要被检查”,打成了“需要被抽查”了,一字之差啊
网友评论