欢迎光临
我们一直在努力

【Python二级】简单应用题第三/四套:turtle绘图与字典统计全解析

小黑课堂简单应用题第三、四套

第一题

题目

44、考生文件夹下存在一个文件PY201.py,请写代码替换横线,不修改其他代码,实现以下功能:

使用turtle库的turtle.fd()函数和turtle.seth()函数绘制一个每方向为100像素长度的十字形,效果如图所示。在这里插入图片描述

代码

import turtle
for i in range(4):
turtle.fd(100)
turtle.fd(100)
turtle.seth((i+1)*90)

解析

主要考查 “海龟绘图体系” 绘制一个十字形

turtle.fd(100)函数控制画笔当前行进方向前进距离为100像素,为负值表示反方向。

turtle.seth()用来改变画笔绘制方向。turtle,seth(to_angle)中的to_angle是绝对值角度值。

第二题

题目

45、考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能:

键盘输入一组我国高校所对应的学校类型,以空格分隔,共一行,示例格式如下:

综合 理工 综合 综合 综合 师范 理工

统计各类型的数量,从数量多到少的顺序屏幕输出类型及对应数量,以英文冒号分隔,每个类型一行,输出参考格式如下:

综合:4

理工:2

师范:1

代码

txt = input("请输入类型序列: ")
t=txt.split()
d = {}
for i in range(len(t)):
d[t[i]]=d.get(t[i],0)+1
ls = list(d.items())
ls.sort(key=lambda x:x[1], reverse=True) # 按照数量排序
for k in ls:
print("{}:{}".format(k[0], k[1]))

解析

主要考查 字典类型的使用

采用字典类型表达,构成“高校类型:数量”的键值对。因此,将键盘输入的内容作为数据源,构造字典表达统计过程。

创建字典d,可以利用”d[键]=值"方式作为字典在增加新的键值对变量。

d[w]=d.get(w,0)+1

其作用是增加一次元素w出现的次数。使用.get()方法获得当前字典中w作为键对应的值。即w已经出现的次数,如果w不存在,则返回0,否则返回值。

第三题

题目

44、考生文件夹下存在一个文件PY201.py,请写代码替换横线,不修改其他代码,实现以下功能:

使用turtle库的turtle.fd()函数和turtle.seth()函数绘制一个等边三角形,边长为200像素,效果如下图所示。在这里插入图片描述

代码

import turtle as t
for i in range(3):
t.seth(i*120)
t.fd(200)

解析

主要考查 “海龟绘图体系”,绘制一个等边三角形

import turtle as t 形式是引入turtle库并赋予别名的方式,把turtle赋予别名t

第四题

题目

45、考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能:

键盘输入小明学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下:

数学 90

语文 95

英语 86

物理 84

生物 87

屏幕输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留2位小数)。

注意,其中逗号为英文逗号,格式如下:

最高分课程是语文 95,最低分课程是物理 84,平均分是88.40

代码

data = input() # 课程名 考分
d={}
while data:
ls=data.split()
d[ls[0]]=int(ls[1])
data = input()
lt=list(d.items())
lt.sort(key=lambda x:x[1],reverse=True)

avg=sum(d.values()) / len(d.values())
print("最高分课程是{} {}, 最低分课程是{} {}, 平均分是{:.2f}".format(lt[0][0],lt[0][1],lt[1][0],lt[1][1],avg))

解析

主要考查 字典类型的使用

采用字典构成“课程名:分数”的键值对

d.items() 返回所有的键值对

lt=list(d.items()) 将字典 d 的键值对转换成了一个列表。

例如,字典 d = {'数学': 90, '语文': 95, '英语': 86},

则 lt = [('数学', 90), ('语文', 95), ('英语', 86)]。

d.values() 返回所有的值信息

lt.sort(key=lambda x:x[1],reverse=True) 对分数进行从大到小的排序

key=lambda x: x[1] 中的 lambda x: x[1] 是一个匿名函数,它接受一个参数 x(代表列表中的每个元素,即一个元组),并返回 x[1](即元组的第二个元素,也就是分数)。

因此,排序时比较的是每个元组的分数,而不是整个元组。

排序前:lt = [('数学', 90), ('语文', 95), ('英语', 86)]
排序后:lt = [('语文', 95), ('数学', 90), ('英语', 86)]

并返回 x[1](即元组的第二个元素,也就是分数)。

因此,排序时比较的是每个元组的分数,而不是整个元组。

排序前:lt = [('数学', 90), ('语文', 95), ('英语', 86)]
排序后:lt = [('语文', 95), ('数学', 90), ('英语', 86)]

这样,lt[0] 就是分数最高的课程,lt[-1] 就是分数最低的课程。

赞(0)
未经允许不得转载:171主机测评 » 【Python二级】简单应用题第三/四套:turtle绘图与字典统计全解析
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址