计算机二级(python)【三】

您所在的位置:网站首页 python输入名字年龄并且输出数字 计算机二级(python)【三】

计算机二级(python)【三】

2024-06-26 16:27| 来源: 网络整理| 查看: 265

真题9

1、在考生文件夹下有个文件PY101.py,在横线处填写代码,完成如下功能。程序接收用户输入的五个数,以逗号分隔。将这些数字按照输入顺序输出,每个数字占10个字符宽度,右对齐,所有数字显示在同一行。例如:

输入:

23,42,543,56,71

输出:

23 42 543 56 71

代码 num = input().split(',') for i in num: print("{:>10}".format(i),end="")

2、在考生文件夹下有个文件PY102.py,在横线处填写代码,完成如下功能。社会平均工作时间是每天8小时(不区分工作日和休息日),一位计算机科学家接受记者采访时说,他每天工作时间比社会平均工作时间多3小时。如果这位科学家的当下成就值是1,假设每工作1个小时成就值增加0.01%,计算并输出两个结果:这位科学家5年后的成就值,以及达到成就值100所需要的年数。其中,成就值和年数都以整数表示,每年以365天计算。

输出格式示例如下:

5年后的成就值是XXX

XX年后成就值是100

代码 scale = 0.0001 # 成就值增量 def calv(base, day): val = base * pow((1+scale),day*11) return val print('5年后的成就值是{}'.format(int(calv(1, 5*365)))) year = 1 while calv(1, year*365) 0 and type(a) == int: print(a) break else: print("请输入正整数") except: print("请输入正整数")

4、在考生文件夹下有个文件PY201.py,在横线处填写代码,完成如下功能。根据列表中保存的数据采用turtle库画图直方图,显示输出在屏幕上,效果如下图所示。 在这里插入图片描述

代码 import turtle as t #更简洁地调用turtle库 ls = [69, 292, 33, 131, 61, 254] X_len = 400 Y_len = 300 x0 = -200 y0 = -100 t.penup() t.goto(x0, y0) t.pendown() t.fd(X_len) t.fd(-X_len) t.seth(90) #设置笔的起始角度 t.fd(Y_len) t.pencolor('red') t.pensize(5) for i in range(len(ls)): t.penup() #提起画笔 t.goto(x0 + (i+1)*50, y0) #移到绝对坐标处,这里x坐标动,y坐标不动 t.seth(90) t.pendown() #放下画笔 t.fd(ls[i]) #表示直线爬行的距离 t.done()

5、在考生文件夹下有个文件PY202.py,在省略号处填写一行或多行代码,完成如下功能。在已定义好的字典pdict里有一些人名及其电话号码。请用户输入一个人的姓名,在字典中查找该用户的信息,如果找到,生成一个四位数字的验证码,并将名字、电话号码和验证码输出在屏幕上,如示例所示。如果查找不到该用户信息,则显示“对不起,您输入的用户信息不存在。”示例如下:

输入:

Bob

输出:

Bob 234567891 1926

输入:bob

输出:

对不起,您输入的用户信息不存在。

代码 import random random.seed(2) pdict= {'Alice':['123456789'], 'Bob':['234567891'], 'Lily':['345678912'], 'Jane':['456789123']} name = input('请输入一个人名:') if name in pdict: print("{} {} {}".format(name,pdict.get(name)[0],random.randint(1000,9999))) else: print("对不起,您输入的用户信息不存在。")

6、考生文件夹下存在2个Python源文件和2个文本文件。其中,2个python源文件对应2个问题,2个文本文件分别摘自2019年和2018年的政府工作报告。请分别补充2个Python源文件,实现以下功能。

问题1(10分):数据统计。要求:修改PY301-1.py文件中代码,分别统计两个文件中出现次数最多的10词语,作为主题词,要求词语不少于2个字符,打印输出在屏幕上,输出示例如下:(示例词语非答案)

2019:改革:10,企业:9,…(略),深化:2

2018:改革:11,效益:7,…(略),深化:1

注意:输出格式采用英文冒号和英文逗号,标点符号前后无空格,各词语间用逗号分隔,最后一个词语后无逗号。

问题2(10分):数据关联。要求:修改PY301-2.py文件中代码,对比两组主题词的差异,输出两组的共有词语和分别的特有词语。输出示例如下:(示例词语非答案)

共有词语:改革,…(略),深化

2019特有:企业,…(略),加强

2018特有:效益,…(略),创新

注意:输出格式采用英文冒号和英文逗号,标点符号前后无空格,各词语间用逗号分隔,最后一个词语后无逗号。

问题一代码 import jieba fa=open("data2019.txt","r") txt=fa.read() fa.close() words=jieba.lcut(txt) d = {} for word in words: if len(word)==1: continue else: d[word]=d.get(word,0)+1 lt = list(d.items()) lt.sort(key = lambda x:x[1],reverse = True) print("2019:",end="") for i in range(10): word,count=lt[i] if i2} {}'.format(i+1, ">"*(i+1)))

2、在考生文件夹下有个文件PY102.py,在横线处填写代码,完成如下功能。让用户输入一串数字和字母混合的数据,然后统计其中数字和字母的个数,显示在屏幕上。例如:

输入:

Fda243fdw3

输出:

数字个数:4,字母个数:6

代码 ns = input("请输入一串数据:") dnum,dchr = 0,0 #双变量赋值方式 for i in ns: if i.isnumeric(): #如果是数字字符 dnum += 1 elif i.isalpha(): dchr += 1 else: pass #空语句,为了保持程序结构的完整性,用于占位 print('数字个数:{},字母个数:{}'.format(dnum,dchr))

3、在考生文件夹下有个文件PY103.py,在横线处填写代码,完成如下功能。将程序里定义好的std列表里的姓名和成绩与已经定义好的模板拼成一段话,显示在屏幕上。例如:

亲爱的张三,你的考试成绩是英语90,数学87,Python语言95,总成绩272。特此通知。

…(略)

代码 std = [['张三',90,87,95],['李四',83,80,87],['王五',73,57,55]] modl = "亲爱的{}, 你的考试成绩是: 英语{}, 数学{}, Python语言{}, 总成绩{}.特此通知." for st in std: cnt = 0 #总成绩初始值 for i in range(3): #循环三科成绩 cnt += st[i+1] #成绩求和 print(modl.format(st[0],st[1],st[2],st[3],cnt))

4、在考生文件夹下有个文件PY201.py,在横线处填写代码,完成如下功能。利用random库和turtle库,在屏幕上绘制5个圆圈,圆圈的半径和圆心的坐标由randint()函数产生,圆的X和Y坐标范围在[-100,100]之间;半径的大小范围在[20,50]之间,圆圈的颜色随机在color列表里选择。效果如下图所示。 在这里插入图片描述

代码 import turtle as t #对turtle库中函数调用采用更简洁的形式 import random as r color = ['red','orange','blue','green','purple'] r.seed(1) for i in range(5): rad = r.randint(20,50) #在[20,50]之间生成一个半径值 x0 = r.randint(-100,100) y0 = r.randint(-100,100) t.color(r.choice(color)) t.penup() #提起画笔 t.goto(x0,y0) #移到绝对坐标处 t.pendown() #放下画笔 t.circle(rad) t.done()

45、在考生文件夹下有个文件PY202.py,定义了一个6个浮点数的一维列表lt1和一个包含3个数的一维列表lt2。

示例如下:

lt1=[0.69,0.292,0.33,0.131,0.61,0.254]

lt2=[0.1,0.8,0.2]

在横线处填写代码,完成如下功能。计算lt1列表跟lt2列表的向量内积,两个向量X=[x1,x2,x3]和Y=[y1,y2,y3]的内积计算公式如下:

k=x1y1+x2y2+x3*y3

将每次计算的两组对应元素的值、以及对应元素乘积的累计和(k)的值显示在屏幕上格式如下所示。

k=0.069,lt2[0]=0.100,lt1[0+0]=0.690

k=0.303,lt2[1]=0.800,lt1[0+1]=0.292

k=0.369,It2[2]=0.200,lt1[0+2]=0.330

… (略)

计算方式如下:

第一步计算第一个k, 分为3次累加计算:

k=lt2[0]* lt1[0+0];

k=lt2[0]* lt1[0+0]+lt2[1]* lt1[0+1]; .

k=lt2[0]* lt1[0+0]+ lt2[1]* lt1[0+1]+ lt2[2]*lt1[0+2]

最终得到最后一个k值保存

第二步计算第二个k,分为3次累加计算:

k=lt2[0]* lt1[1+0];

k=lt2[0]* lt1[1+0]+ lt2[1]* lt1[1+1];

k=lt2[0]* lt1[1+0]+ lt2[1]* lt1[1+1]+lt2[2]*lt1[1+2]

最终得到最后一个k值保存,依照此规律依次计算。

代码 img = [0.244, 0.832, 0.903, 0.145, 0.26, 0.452] filter = [0.1,0.8,0.1] res = [] for i in range(len(img)-2): k=0 #有多个和,所以每次赋初始值0 for j in range(3): #求3次累计和 k+=filter[j]*img[i+j] #求3次累计和 print('k={:.3f},filter[{}]={:.3f},img[{}+{}]={:.3f}'.format(k,j,filter[j],i,j,img[i+j])) res.append(k) for r in res: print('{:


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3