Python123Python语言程序设计2021期末考试题库(编程题答案)

《沉默的羔羊》之最多单词
附件是《沉默的羔羊》中文版内容,请读入内容,分词后输出长度大于2且最多的单词。如果存在多个单词出现频率一致,请输出按照Unicode排序后最大的单词。

import jieba
txt = open("沉默的羔羊.txt","r").read()
word = jieba.lcut(txt)
d = {
   }
for w in word:
    d[w] = d.get(w,0)+1
maxc,maxw = 0,""
for k in d:
    if d[k]>maxc and len(k)>2:
        maxc = d[k]
    if d[k]==maxc:
        maxw = k
print(maxw)

输出一串字符对应的Unicode值
获得用户输入的一个字符串,输出每个字符对应的Unicode值,这些值一行输出,采用逗号分隔,最后没有逗号。请完善代码。
s = input(“”)#输入一个字符串
ls = []for c in s:
_____①_____print()

s = input("")#输入一个字符串
ls = []
for c in s:
    ls.append(str(ord(c)))
print(','.join(ls))

CSV 格式数据清洗
附件是一个 CSV 文件,其中每个数据前后存在空格,请对其进行清洗,要求如下:
去掉每个数据前后空格,即数据之间仅用逗号 (,) 分割;
清洗后打印输出。

with open('data.csv', 'r', encoding='utf-8') as f:
    s = f.read()
    s = s.replace(" ","")
    print(s)
f.close()

文本字符分布
分析附件 data.txt 文件的字符分布,即每个字符对应的数量。‬
按照 字符:数量 显示,每行一个结果,如果没有出现该字节则不显示输出,字符采用 Unicode 编码升序排列。

f=open("data.txt", "r")
s = f.read()
c = dict()
for i in  s:
    if i in c:
        c[i]+=1
    else:
        c[i]=1
c_s = sorted(c.items(),key=lambda x:x[0],reverse=False)
for key,value in c_s:
print("{}:{}".format(key,value))

十二星座
编写程序,读入 CSV 文件中数据,循环获得用户输入,直至用户输入 “exit” 退出。根据用户输入的星座名称,输出此星座的出生日期范围及对应字符形式。如果输入的星座名称有误,请输出“输入星座名称有误!”。

f = open("SunSign.csv","r")
ls = []
for line in f:
    line = line.replace("\n","")
    ls.append(line.split(","))
while True:
    s = input()
    s.strip()
    f = 0
    if(s=="exit"):
        break
    for line in ls:
        if s == line[0]:
            f = 1
            print("{}座的生日位于{}-{}之间".format(chr(eval(line[3])),line[1],line[2]))
    if f==0:
        print("输入星座名称有误!")

凯撒密码B

s = input()
C =""
for P in s:
    if 'a'<= P <= 'z':
        C += chr( ord('a') + ((ord(P)-ord('a')) + 3 )%26 )
elif 'A'<= P <='Z':
C += chr( ord('A') + ((ord(P)-ord('A')) + 3 )%26 )
else:
C += P
print(C)

列表元素积

ls = eval(input(""))
s = 1
lt = []
for i in range(len(ls)):
    temp = ls[:]
    temp.pop(i)
    for j in temp:
        s *= j
    lt.append(s)
    s = 1
print(lt)

斐波拉契数列的前n项

def fib(n):
    if (n == 0):
        return 0
    if (
  • 52
    点赞
  • 475
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值