首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。 下面所示为—套由公司职员随身佩戴的位置传感器采集的数据,文件名称为“sensor.txt”,其内容示例如下: 2016/5/31 0:05,
考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。 下面所示为—套由公司职员随身佩戴的位置传感器采集的数据,文件名称为“sensor.txt”,其内容示例如下: 2016/5/31 0:05,
admin
2021-03-16
59
问题
考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。
下面所示为—套由公司职员随身佩戴的位置传感器采集的数据,文件名称为“sensor.txt”,其内容示例如下:
2016/5/31 0:05,vawelon001,1,1
2016/5/31 0:20,earpa001,1,1
2016/5/31 2:26,earpa001,1,6
…
第1列是传感器获取数据的时间,第2列是传感器的编号,第3列是传感器所在的楼层,第4列是传感器所在的位置区域编号。
问题1:在“PY301-1.PY”文件中修改代码,读入“sensor.txt”文件中的数据,提取出传感器编号为esi-pa001的所有数据,将结果输出保存到“earpa001.txt”文件。输出文件的格式要求:原数据文件中的每行记录写入新文件中,行尾无空格,无空行。参考格式如下。
2016/5/31 7:11,earpa001,2,4
2016/5/31 8:02,earpa001,3,4
2016/5/31 9:22,earpa001,3,4
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的________处使用一行代码替换
#注意:提示框架的代码可以任意修改,以完成程序功能为准
…
for line in________:
…
fo.write(’{},{},{},{}\n’.format(________))
…
问题2:在“PY301-2.PY”文件中修改代码,读入“earpa001.txt”文件中的数据。统计earpa001对应的职员在各楼层和区域出现的次数,保存到“earpa001_count.txt”文件。每条记录一行,位置信息和出现的次数之
间用逗号隔开,行尾无空格,无空行。参考格式如下。
1-1,5
1-4,3
…
含义如下:
第1行“1-1,5”中1-1表示l楼1号区域,5表示出现5次;
第2行“1-4,3”中1-4表示1楼4号区域,3表示出现3次。
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的________处使用一行代码替换
#注意:提示框架的代码可以任意修改,以完成程序功能为准
…
d={}
…
ls=list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)#该语句用于排序
…
fo.write(’{},{}\n’.format(________))
…
选项
答案
(1)fi=open(’sensor.txt’,2) fo=open(’earpa001.txt’, ’w’) txt=fi.readlines() for line in txt: ls=line.strip("\n").split(",") if’earpa001’in ls: fo.write("{},{},{},{}\n".format(ls[0], ls [1], ls [2],ls[3])) fi.close() fo.close() (2)fi=open(’earpa001.txt’,’r’) fo=open(’earpa001 count.txt’,’w’) d={} for line in fi: split data=line.strip(”\n" ).split(’,’) floor and area=split data[-2]+"-"+split_data[-1] if floor_and_area in d: d[floor and area]+=1 else: d[floor and area]=1 ls=list(d.items()) ls.sort(key=lambda x: x[1], reverse=True) #该语句用于排序 for j in range(len(ls): fo.write("{},{}\n".format(ls[j][0],ls[j][1])) fi.close() fo.close()
解析
(1)本题涉及“sensor.txt”和“earpa001.txt”两个文件,前者使用r模式打开,后者使用w模式创建。从文件“sensor.txt”中读入所有的行,以行为元素形成列表txt。然后使用for循环遍历列表缸t中的每个元素,并将该元素内容存入列表ls中。使用if条件判断“earpa001”是否在列表ls中,如果存在,就将列表ls中的前四个元素写入文件“earpa001.txt”中。最后关闭文件。
(2)本题涉及“earpa001.txt”和“earpa001-count.txt”两个文件,前者使用r模式打开,后者使用w模式创建。由于题目涉及统计计算,这可以借助字典来实现,因此首先定义字典变量d。
然后使用for循环遍历“earpa001.txt”的每一行,并将该行内容存入列表split_data中,由于题目要求的格式形如“1-1”,因此需要将列表split_data中的最后两个元素通过“-”进行连接并赋值给变量floor_and_area。使用if条件判断floor_and_area在字典d中是否存在,若存在则将该键对应的值加1,若不存在则将变量作为字典的键并将对应值设置为1。
ls=list(d.items())表示将字典类型变成列表类型,字典中的每个键值对对应列表中的一个元组。随后,对列表ls中的元组按照第二个元素的大小降序排序。
排序后,再通过一个for循环遍历将列表ls中每个元组的第一个和第二个元素写入文件earpa001_count_txt中。最后关闭文件。
转载请注明原文地址:https://kaotiyun.com/show/El6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
在考生文件夹下,完成如下操作:(1)打开考生文件夹下的表单one,如下图所示,编写“显示”命令按钮的Click事件代码,使表单运行时单击该命令按钮则在Text1文本框中显示当前系统日期的年份(提示:通过设置文本框的Value属性实现,系统日期函数是dat
设数据库有如下表:图书(图书号,书名,单价)购书(顾客编号,图书号,数量,购书日期)已知购书表中已经保存了购买多本图书的信息。下列语句中,与“SELECT*FROM图书WHERE图书号IN(SELECT图书号FROM购书)”语句等价的是()。
设成绩(学号,课程号,考试分数),如果要删除成绩表中考试分数为空值的记录,则下面语句正确的是()。
下列字符串表示方法正确的是()。
在菜单设计器环境下,选择“显示”菜单中的“常规选项”命令能够打开“常规选项”对话框。下面不能在“常规选项”对话框中进行的操作是()。
有借阅表(借阅.DBF),其结构如下:借书证号C(5),总编号C(6),借书日期D下面能够成功向该表插入一条记录的SQL语句是()。
在考生文件夹下完成下列操作:1.修改并执行程序temp。该程序的功能是根据“教师表”和“课程表”计算讲授“数据结构”这门课程,并且“工资”大于等于4000的教师人数。注意:只能修改标有错误的语句行,不能修改其他语句。2.在“学校”数据库中(在基本操作题
(1)使用一对多表单向导新建一个表单sportform。要求:使用“国家”为父表并选择“国家名称”字段作为显示字段,“获奖牌情况”为子表并选择“项目名称”和“名次”字段作为显示字段,使用“国家代码”建立表之间的关系,表单样式选择“阴影式”,按钮类型选择“
关于Python文件打开模式的描述,以下选项中错误的是
以下选项中不是Python数据分析的第三方库的是
随机试题
用力呼吸的描述,不正确的是
可用于治疗肿瘤的药物是
管理本行政区域医师工作的机构是
与发生前置胎盘关系最小的病因是( )
能发现焊缝内部气孔、夹渣、裂纹及未焊透等缺陷的目前应用较为广泛的无损检测方法是()。
工程施工过程中应当采取消防安全措施,下列说法中错误的是( )。
不论人们在主观上承认与否,在客观的效果上,教育的努力最终_________在处于未来背景下的某一特定的社会阶段中表现出来,因此,教育总是要表现出一种为未来社会服务的职能。填入横线上最恰当的是()。
由于含糖饮料的卡路里含量高,容易导致肥胖,因此无糖饮料开始流行,经过一段时期的调查,李教授认为,无糖饮料尽管卡路里含量低,但并不意味它不会导致体重增加,因为无糖饮料可能导致人们对于甜食的高度偏爱,这意味着可能食用更多的含糖类食物。而且无糖饮料几乎没什么营养
甲是一家知名电子公司的业务经理,男,35岁。甲12年前大学本科毕业后参加工作。甲为了获得更大的发展机会,于2015年10月报考了某校的MBA。但因离校10多年,甲对自己即将参加的考试心中没底,于是报名后便在网上找到了某替考机构,并与该替考机构的乙签订了“合
A、 B、 C、 D、 C
最新回复
(
0
)