本文主要是介绍计算机二级python第二套,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
41、考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代码,实现以下功能:
随机选择一一个手机品牌屏幕输出。
提示:建议使用本机提供的Python集成开发环境IDLE编写、调试及验证程序。
import random
brandlist = ['华为','苹果','诺基亚','OPPO','小米']
random.seed(0)
name = random.choice(brandlist)
print(name)
42、考生 文件夹下存在一个文件PY102.py,请写代码替换横线,键盘输入一段文本,保存在一个字符串变量s中,分别用Python内置函数及jieba库中已有函数计算字符串s的中文字符个数及中文词语个数。注意:中文字符包含中文标点符号。
例如,键盘输入:
俄罗斯举办世界杯
屏幕输出:
中文字符数为8,中文词语数为3。
import jieba
s = input("请输入一个字符串")
n = len(s)
m = len(jieba.lcut(s))
print("中文字符数为{},中文词语数为{}。".format(n, m))
43、考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:
某商店出售某品牌运动鞋,每双定价160,1双不打折,2双(含)到4双(含)打九折,5双(含)到9双(含)打八折,10双(含)以上打七折,键盘输入购买数量,屏幕输出总额(保留整数)。示例格式如下:
输入: 1
输出:总额为: 160
提示:建议使用本机提供的Python集成开发环境IDLE编写、调试及验证程序。
n = eval(input("请输入数量:"))
if n == 1:cost = 160*n
elif 2<=n<=4:cost = 160*n*0.9
elif 5<=n<=9:cost = 160*n*0.8
else:cost = 160*n*0.7
print("总额为:",cost)
44、考生文件夹下存在一个文件PY201.py,请写代码替换横线,不修改其他代码,实现以下功能:
使用turtle库的turtle.fd()函数和turtle. seth()函数绘制一个边长为200的正菱形,菱形4个内角均为90度。效果如下图所示,箭头与下图严格-致。
提示:建议使用本机提供的Python集成开发环境IDLE编写、调试及验证程序
import turtle
turtle.pensize(2)
d = -45
for i in range(4):turtle.seth(d)d += 90turtle.fd(200)
45、考生 文件夹下存在一个文件PY202.py,请在该文件中作答,实现以下功能。
键盘输入某班各个同学就业的行业名称,行业名称之间用空格间隔(回车结束输入)。完善Python代码,统计各行业就业的学生数量,按数量从高到低方式输出。例如输入:
交通 金融 计算机 交通 计算机 计算机
输出参考格式如下,其中冒号为英文冒号:
计算机:3
交通:2
金融:1
提示:建议使用本机提供的Python集成开发环境IDLE编写、调试及验证程序。
names=input("请输入各个同学行业名称,行业名称之间用空格间隔(回车结束输入):")
ls = names.split()
d = {}
for i in ls:d[i]=d.get(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]))
46、考生文件夹下存在两个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 (10分) :在PY301-1. py文件中修改代码,读入sensor. txt文件中的数据,提取出传感器编号为earpa00的所有数据,将结果输出保存到“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
... (略)
问题2 (10分) :在PY301-2. py文件中修改代码,读入“earpa001. txt” 文件中的数据,统计earpa001对应的职员在各楼层和区域出现的次数,保存到“earpa001 _count. txt” 文件,每条记录一 -行,位置信息和出现的次数之间用英文半角逗号隔开,行尾无空格,无空行。参考格式如下。
1-1,5
1-4, 3
... (略)
含义如下:
第1行“1-1,5”中1-1表示1楼1号区域,5表示出现5次;
第2行“1-4,3”中1-4表示1楼4号区域,3表示出现3次;
提示:建议使用本机提供的Python集成开发环境IDLE编写、调试及验证程序。
#问题1
f = open('sensor.txt','r',encoding='utf-8')
fo = open('earpa001.txt','w')
ls = f.readlines()
for line in ls:lt = line.strip('\n').split(',')if lt[1] ==' earpa001': fo.write('{},{},{},{}\n'.format(lt[0],lt[1],lt[2],lt[3]))
f.close()
fo.close()#问题2
f = open('earpa001.txt','r',encoding='utf-8')
fo = open('earpa001_count.txt','w')
ls = f.readlines()
d = {}
for line in ls:lt = line.strip('\n').split(',')key = lt[2]+'-'+lt[3]d[key] = d.get(key,0)+1
ls = list(d.items())
ls.sort(key=lambda x:x[1], reverse=True) # 该语句用于排序
for k in ls:fo.write('{},{}\n'.format(k[0],k[1]))
f.close()
fo.close()
这篇关于计算机二级python第二套的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!