首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能: 键盘输入张嘉译学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下:
考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能: 键盘输入张嘉译学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下:
admin
2020-04-10
22
问题
考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能:
键盘输入张嘉译学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下:
数学98
语文89
英语94
物理74
科学87
输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留2位小数),结果保存在考生文件夹下,命名为“PY202.txt”。。
注意,其中逗号为英文逗号,格式如下:
最高分课程是数学98,最低分课程是物理74,平均分是88.40
试题程序:
}}以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的______处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
fo=open(”PY202.txt”,”w”)
data=input(”请输入课程名及对应的成绩:")#课程名考分
…
while data:
…
data=input(“请输入课程名及对应的成绩:”)
…
fo.write(n最高分课程是{}{},最低分课程是{}{},平均分是(:.2f)".format(_________))
fo.close()
选项
答案
fo=open(”PY202.txt”,”w”) data=input(”请输入课程名及对应的成绩:”)#课程名 考分 course_score_dict = {} while data: course,score = data.split(’’) course_score_dict[course] = eval(score) data=input(”请输入课程名及对应的成绩:”) course_list = sorted(list(course_score_dict.values())) max_score,min_score = course_list[-1],course_list[0] average_score = sum(course_list)/len(course_list) max_course,min_course = "," for item in course_score_dict.items(): if item[1] = = max_score: max_course = item[0] if item[1] = = min_score: min_course = item[0] fo.write(”最高分课程是{}{},最低分课程是{}{},平均分是{:.2f}”.format(max_course,max_score,min_course,min_score,average_score)) fo.close()
解析
本题涉及课程名称及其成绩的统计,可以借助字典来实现,课程名称及其对应的成绩构成字典的键值对。因此需要先定义一个字典变量course_score_dict,然后对其进行构造,课程名称作为字典的键,其成绩作为键对应的值。
题目要求输出最高成绩和最低成绩,就需要对成绩进行排序,可以使用sorted()方法,但该方法只适用于列表,因此需要将字典转化成列表。我们可以使用字典的values()方法返回所有的值信息(即所有的成绩),将这些值存人到一个列表中,然后对该列表按升序进行排序并赋值给列表course_list。这时,列表course_list中第一个元素course_list[0]就是最低分min_score,最后一个元素course_list[一1]就是最高分max_score,列表中所有元素的和除以列表的长度就是平均分average_score。
题目还要求输出最高分和最低分对应的课程名称,可以使用for循环遍历字典course_score_dict中的每个键值对,判断键值对中的值是否和max_score或min_score相等,如果和max_score相等,则该值对应的键即为最高分课程名称max_course,如果和min_score相等,则该值对应的键即为最低分课程名称mix_course。最后将max_course,max_score,min_course,min_score,average_score根据格式写入到文件”PY202.txt”中。
转载请注明原文地址:https://kaotiyun.com/show/r56p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
与“SELECT*FROM学生INTODBFA”等价的语句是()。
以下不属于SQL数据操作命令的是()。
VisualFoxPro的连编功能可以生成的文件类型包括()。
在VisualFoxPro中建立一个新项目的命令是()。
以下关于视图描述错误的是()。
下列程序段的执行结果是()。DIMEa(8)a(1)=1a(2)=1fori=3to8a(i)=a(i-1)+a(i-2)next?a(7)
在数据管理技术发展的三个阶段中,数据共享最好的是()。
正确的SQL插入命令的语法格式是
下列程序的运行结果是>>>s=’PYTHON’>>>“{0:3}”.format(s)
关于Python字符编码,以下选项中描述错误的是
随机试题
光明中学向小雅制衣厂定制一批校服(1000件),在交付校服时发现,其中有200件与要求不符,经调查,发现小雅制衣厂将该200件交由南方制衣厂完成,南方制衣厂为节约成本偷工减料,致使校服质量不合标准,光明中学遂主张解除合同。在此题中,小雅制衣厂违反了下列哪项
慢性肾衰竭患者常伴贫血的主要原因为
大剂量用药后易发生高铁血红蛋白血症的药物是
患儿,5岁。先天Ⅲ度腭裂,于全麻下接受腭裂修复术,为使发音和讲话接近正常,术后应
下列水轮机形式中,属于反击式水轮机的是()。
《工伤保险条例》的规定,职工因工作遭受事故伤害或者患职业病需要暂停工作接受工伤医疗的,停工留薪期一般不超过()。
安装工程保险试车考核期以不超过()为限。
下列数组声明语句中,正确的是()。
扩展名为mpr的文件是
A、Wheretohavethemeeting.B、Whentohavethemeeting.C、Whentoattendthemeeting.D、Whattodiscussatthemeeting.B本题问的是
最新回复
(
0
)