41、考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代码,实现以下功能:
键盘输入数字n,按要求把n输出到屏幕,格式要求:宽度为30个字符,星号字符填充,居中对齐。如果输入字符串超过30位,则全部输出。
输出数字保留一位小数。
例如:键盘输入字符串n为"3.1415",屏幕输出************3.1**************
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
n = eval(input("请输入数字:"))
print("{_____}".format(n))
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
n = eval(input("请输入数字:"))
print("{:*^30.1f}".format(n))
42、 考生文件夹下存在一个文件PY102.py, 请写代码替换横线, 不修改其他代码,实现以下功能:
使用程序计算整数 N 到整数 N+100 之间所有偶数的数值和,不包含 N+100,并将结果输出。整数 N 由用户给出。不判断输入异常。
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
N = eval(input())
______
for i in range(N,N+100):
if ________:
s+=i
print(s)
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
N = eval(input())
s=0
for i in range(N,N+100):
if i%2==0:
s+=i
print(s)
43、考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:
键盘输入一句话,用jieba分词后,将切分的词组按照在原话中逆序输出到屏幕上,词组中间没有空格。示例如下:
输入:
我爱老师
输出:
老师爱我
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
import jieba
txt = input("请输入一段中文文本:")
______
for i in ls[::-1]:
______
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
import jieba
txt = input("请输入一段中文文本:")
ls=jieba.lcut(txt)
for i in ls[::-1]:
print(i,end='')
44、考生文件夹下存在一个文件PY201.py,请写代码替换横线,不修改其他代码,实现以下功能:
使用turtle库的函数绘制图形,效果如下图所示。
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
from turtle import *
for i in range(_____):
______(90,90)
left(180)
fd(______)
# 请在______处使用一行代码或表达式替换
#
# 注意:请不要修改其他已给出代码
from turtle import *
for i in range(2):
circle(90,90)
left(180)
fd(180)
45、考生文件夹下存在一个文件PY202.py,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能:
有如下字符串。示例格式如下:
s=’中国,美国,德国,巴基斯坦,中国,中国,德国,中国,巴基斯坦,巴基斯坦’
统计各国家的数量,从数量多到少的顺序输出类型及对应数量,以英文冒号分隔,每个类型一行。输出结果保存在考生文件夹下,命名为“PY202.txt”。输出参考格式如下:
中国:4
巴基斯坦:3
德国:2
美国:1
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
s='中国,美国,德国,巴基斯坦,中国,中国,德国,中国,巴基斯坦,巴基斯坦'
d={}
...
lt = list(d.items())
lt.sort(key=lambda x:x[1],reverse=True)
for k in lt:
print("{}:{}".format(k[0],k[1]))
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
s='中国,美国,德国,巴基斯坦,中国,中国,德国,中国,巴基斯坦,巴基斯坦'
d={}
s=s.split(',')
for i in s:
d[i]=d.get(i,0)+1
# d={'中国': 4, '美国': 1, '德国': 2, '巴基斯坦': 3}
lt = list(d.items())
# lt=[('中国', 4), ('美国', 1), ('德国', 2), ('巴基斯坦', 3)]
lt.sort(key=lambda x:x[1],reverse=True)
# lt=[('中国', 4), ('巴基斯坦', 3), ('德国', 2), ('美国', 1)]
for k in lt:
print("{}:{}".format(k[0],k[1]))
46、考生文件夹下存在2个Python源文件,分别对应2个问题;1个文本文件,作为本题目输入数据,请按照源文件内部说明修改代码,实现以下功能:
《背影》是朱自清的代表作之一,这里给出《背影》的原文内容,文件名为“背影.txt”。
问题1(10分):在PY301-1.py文件中修改代码,对“背影.txt”文件进行字符频次统计, 按照频次由高到低,输出前10个频次最高的字符,不包含空格和回车符,字符之间无间隔,连续输出,将输出结果保存在考生文件夹下,命名为“背影-高频词汇.txt”。示例格式如下:
,我。他的了不去是一
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
...
d={}
...
ls = list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)
...
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
f=open('背影.txt','r',encoding='utf-8')
fo=open('背影-高频词汇.txt','w')
s=f.read()
d={}
for i in s:
if i not in "\n":
d[i]=d.get(i,0)+1
ls = list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)
# ls=[(',', 101), ('我', 49), ('。', 48), ('他', 41), ('的', 31), ('了', 29), ('不', 28), ('去', 18), ('是', 15), ('子', 13)]
#前十个
for k in range(10):
fo.write(ls[k][0])
fo.close()
f.close()
问题2 (10分):在PY301-2.py文件中修改代码,对“背影.txt”文件进行字符频次统计,将所有字符按照频次从高到低排序,不包含所有的中文字符、换行和空格。将排序后的字符及频次输出到考生文件夹下,文件名为“背影-频次排序.txt”。字符与频次之间采用英文冒号":“分隔,各字符之间采用英文逗号”,"分隔 ,最后无逗号,文件内部示例格式如下:
我:49,他:41,的:31,了:29,不:28,去:18,
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
...
lt = []
d={}
...
# 以下代码为提示框架
# 请在...处使用一行或多行代码替换
# 请在______处使用一行代码替换
#
# 注意:提示框架代码可以任意修改,以完成程序功能为准
f=open("背影.txt",'r',encoding='utf-8')
fo = open('背影-频次统计.txt','w')
s = f.read()
lt = []
d={}
for i in s:
if i not in " \n,。?、!“”‘’:":
d[i]=d.get(i,0)+1
ls = list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)
# ls=[('我', 49), ('他', 41), ('的', 31)]
for k in ls:
lt.append("{}:{}".format(k[0],k[1]))
# lt=['我:49', '他:41', '的:31', '了:29']
fo.write(','.join(lt))
fo.close()
f.close()