# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准...for line in ______:... fo.write('{},{},{},{}\n'.format(______))...
第1小问答案(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi=open("sensor.txt","r", encoding ="utf-8") fo=open("earpa001.txt","w")for line in fi: ls = line.strip("\n").split(",")if ls[1].count("earpa001")>0: fo.write('{},{},{},{}\n'.format(ls[0], ls[1], ls[2], ls[3])) fi.close() fo.close()
第2小问素材(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... d ={}... ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 该语句用于排序... fo.write('{},{}\n'.format(______))...
第2小问答案(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi =open("earpa001.txt","r") fo =open("earpa001_count.txt","w") d ={}for line in fi: ls = line.strip("\n").split(",") m = ls[2]+"-"+ ls[3] d[m]= d.get(m,0)+1 ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 该语句用于排序for i inrange(len(ls)): fo.write('{},{}\n'.format(ls[i][0], ls[i][1])) fi.close() fo.close()
第2套题
第1小问素材(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi =open("论语.txt", ______) fo =open("论语-原文.txt", ______)...for line in fi:... line = line.strip(" \n")...
第1小问答案(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi =open("论语.txt","r") fo =open("论语-原文.txt","w") flag =Falsefor line in fi:if"【原文】"in line: flag =Truecontinueif"【注释】"in line: flag =False line = line.strip(" \n")if flag:if line: fo.write(line +"\n") fi.close() fo.close()
第2小问素材(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi =open("论语-原文.txt", ______) fo =open("论语-提纯原文.txt", ______)...for line in fi:... line=line.replace(______)...
第2小问答案(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 fi =open("论语-原文.txt","r") fo =open("论语-提纯原文.txt","w")for line in fi:for i inrange(0,30): line=line.replace('({})'.format(i),'') fo.write(line) fi.close() fo.close()
第3套题
第1小问素材(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... ls =[]...print("{}的生日位于{}-{}之间".format(______))
第1小问答案(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f =open("PY301-SunSign.csv") name =input("请输入星座中文名称")for line in f.read().split("\n"): ls =[]if name in line: ls = line.split(",")print("{}的生日位于{}-{}之间".format(ls[1],ls[2],ls[3])) f.close()
第2小问素材(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... ls =[]...print("{}({})的生日是{}月{}日至{}月{}日之间".format(______))
第2小问答案(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f=open("py301-sunsign.csv","r") x=input("请输入星座序号(例如,5):") ls =[]for line in f: ls.append(line.strip('\n').split(',')) num=x.split()for i in num:for row in ls:if row[0]==i:iflen(row[2])==3: m1=row[2][0] d1=row[2][1:3]else: m1=row[2][0:2] d1=row[2][2:4]iflen(row[3])==3: m2=row[3][0] d2=row[3][1:3]else: m2=row[3][0:2] d2=row[3][2:4]print("{}({})的生日是{}月{}日至{}月{}日之间".format(row[1],row[4],m1,d1,m2,d2)) f.close()
第3小问素材(PY301-3.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... ls =[]...print("{}({})的生日是{}月{}日至{}月{}日之间".format(______))...if flag ==False:print("输入星座序号有误!")...
第3小问答案(PY301-3.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f=open("py301-sunsign.csv",'r') ls =[]for line in f: ls.append(line.strip(' \n').split(',')) f.close() x=input("请输入星座序号(例如,5):") num=x.strip(' \n').split()for i in num:if0<int(i)<len(ls):for row in ls:if row[0]==i: m1=row[2][0]iflen(row[2])==3else row[2][0:2] d1=row[2][1:3]iflen(row[2])==3else row[2][2:4] m2=row[3][0]iflen(row[2])==3else row[3][0:2] d2=row[3][1:3]iflen(row[2])==3else row[3][2:4]print("{}({})的生日是{}月{}日至{}月{}日之间".format(row[1],row[4],m1,d1,m2,d2))else:print("输入星座序号有误!")
第4套题
第1小问素材(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... d ={}...print("{}:{}".format(______))
第1小问答案(PY301-1.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换# 请在______处使用一行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f =open('命运.txt','r') d ={}for i in f.read():if i notin",。?!《》【】“”‘’": d[i]= d.get(i,0)+1 ls =list(d.items()) ls.sort(key =lambda x : x[1], reverse =True)print("{}:{}".format(ls[0][0], ls[0][1])) f.close()
第2小问素材(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... d ={}... ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序...
第2小问答案(PY301-2.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f =open('命运.txt','r') d ={}for i in f.read():if i notin",:。?!《》【】“”‘’\"\n": d[i]= d.get(i,0)+1 ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序for i inrange(10):print(ls[i][0], end ="") f.close()
第3小问素材(PY301-3.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准... d ={}... ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序...
第3小问答案(PY301-3.py)
# 以下代码为提示框架# 请在...处使用一行或多行代码替换## 注意:提示框架代码可以任意修改,以完成程序功能为准 f =open('命运.txt','r') fi =open('命运-频次排序.txt','w') d ={}for i in f.read():if i notin"\n": d[i]= d.get(i,0)+1 ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序 s =""for k in ls: s +="{}:{}".format(k[0],k[1])+',' fi.write(s[:-1]) f.close() fi.close()
第5套题
第1小问素材(PY301-1.py)
# 请在______处使用一行代码或表达式替换## 注意:请不要修改其他已给出代码import jieba f =open('data.txt','r') lines = f.readlines() f.close() f =open('out.txt','w')for line in lines: line = ______(1)______ #删除每行首尾可能出现的空格 wordList = ______(2)______ #用结巴分词,对每行内容进行分词 f.writelines('\n'.______(3)______)#将分词结果存到文件out.txt中 f.close()
第1小问答案(PY301-1.py)
# 请在______处使用一行代码或表达式替换## 注意:请不要修改其他已给出代码import jieba f =open('data.txt','r') lines = f.readlines() f.close() f =open('out.txt','w')for line in lines: line = line.strip(' ')#删除每行首尾可能出现的空格 wordList = jieba.lcut(line)#用结巴分词,对每行内容进行分词 f.writelines('\n'.join(wordList))#将分词结果存到文件out.txt中 f.close()
第2小问素材(PY301-2.py)
# 请在______处使用一行代码或表达式替换## 注意:请不要修改其他已给出代码import jieba f =open('out.txt','r')#以读的方式打开文件 words = f.readlines() f.close() D={}for w in _______(1)_________:#词频统计 D[w[:-1]]=_______(2)_________ +1print("曹操出现次数为:{} ".format(_______(3)_________))
第2小问答案(PY301-2.py)
# 请在______处使用一行代码或表达式替换## 注意:请不要修改其他已给出代码import jieba f =open('out.txt','r')#以读的方式打开文件 words = f.readlines() f.close() D={}for w in words:#词频统计 D[w[:-1]]=D.get(w[:-1],0)+1print("曹操出现次数为:{} ".format(D["曹操"]))
第6套题
第1小问素材(PY301-1.py)
# 请在...处使用多行代码替换## 注意:其他已给出代码仅作为提示,可以修改...#此处可多行 f =open('out1.txt','w')...#此处可用多行 f.close()
第1小问答案(PY301-1.py)
# 请在...处使用多行代码替换## 注意:其他已给出代码仅作为提示,可以修改import jieba fi =open('data.txt','r') f =open('out1.txt','w') words =[]for line in fi.readlines(): line = line.strip('\n') wordlist = jieba.lcut(line)#每一行都是一个list,并且list里已经分词for word in wordlist:iflen(word)>=3and(word notin words): words.append(word)for word in words: f.write(word+'\n') fi.close() f.close()
第2小问素材(PY301-2.py)
# 请在...处使用多行代码替换## 注意:其他已给出代码仅作为提示,可以修改...# 此处可多行 d ={}...# 此处可多行 ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序...# 此处可多行
第2小问答案(PY301-2.py)
# 请在...处使用多行代码替换## 注意:其他已给出代码仅作为提示,可以修改import jieba fi =open('data.txt','r') fo =open('out2.txt','w') words =[]for line in fi.readlines(): line = line.strip('\n') wordlist = jieba.lcut(line)#每一行都是一个list,并且list里已经分词for word in wordlist:iflen(word)>=3: words.append(word) d ={}for word in words: d[word]= d.get(word,0)+1 ls =list(d.items()) ls.sort(key=lambda x:x[1], reverse=True)# 此行可以按照词频由高到低排序 s =''for i in ls: s ='{}:{}'.format(i[0],i[1]) fo.write(s+'\n') fi.close() fo.close()
# 请在______处使用一行或多行代码替换## 注意:其他已给出代码仅作为提示,可以修改 fo =open('data.txt','r') lines = fo.read().split('\n') fo.close() L =[]for line in lines:if"alt="in line: L.append(line) S =[]for line in L: point_start = line.find('alt=')+5 point_end = line.find('"', point_start,-1) S.append(line[point_start:point_end]) f =open("univ.txt","w")for school in S: f.write(school) f.write('\n') f.close()
第2小问素材(PY301-2.py)
# 请在______处使用一行或多行代码替换## 注意:其他已给出代码仅作为提示,可以修改 n =0 f =open("univ.txt","r") ____________ # 此处可多行 f.close()print("包含大学的名称数量是{}".format(n))
第2小问答案(PY301-2.py)
# 请在______处使用一行或多行代码替换## 注意:其他已给出代码仅作为提示,可以修改 n =0 k =0 f =open("univ.txt","r") lines = f.read().split('\n') f.close()for school in lines:if(("大学"in school)or("学院"in school))and("大学生"notin school):print(school)if"大学"in school: n +=1elif"学院"in school: k +=1print("包含大学的名称数量是{}".format(n))print("包含学院的名称数量是{}".format(k))
# # 以下代码仅供参考。# import jieba f2018 =open('data2018.txt','r') line2018 = f2018.read().split('\n') f2018.close() f2019 =open('data2019.txt','r') line2019 = f2019.read().split('\n') f2019.close() d ={}for i in line2018: word = jieba.lcut(i)for j in word:iflen(j)>=2: d[j]= d.get(j,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1],reverse =True)print('2018:',end='')for i inrange(9):print('{}:{}'.format(lt[i][0], lt[i][1]), end ='')print(',',end ='')print('{}:{}'.format(lt[9][0], lt[9][1])) d ={}for i in line2019: word = jieba.lcut(i)for j in word:iflen(j)>=2: d[j]= d.get(j,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1],reverse =True)print('2019:',end='')for i inrange(9):print('{}:{}'.format(lt[i][0], lt[i][1]), end ='')print(',',end ='')print('{}:{}'.format(lt[9][0], lt[9][1]))
# # 以下代码仅供参考。# import jieba f2018 =open('data2018.txt','r') line2018 = f2018.read().split('\n') f2018.close() f2019 =open('data2019.txt','r') line2019 = f2019.read().split('\n') f2019.close() d ={}for i in line2018: word = jieba.lcut(i)for j in word:iflen(j)>=2: d[j]= d.get(j,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1],reverse =True) ls2018 =[]for i inrange(10): ls2018.append(lt[i][0]) d ={}for i in line2019: word = jieba.lcut(i)for j in word:iflen(j)>=2: d[j]= d.get(j,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1],reverse =True) ls2019 =[]for i inrange(10): ls2019.append(lt[i][0]) lslike =[]for i in ls2018:if i in ls2019: lslike.append(i)for i in lslike: ls2018.remove(i) ls2019.remove(i)print('共有词语:', end ='')for i in lslike[:-1]:print(i, end =',')print(lslike[-1])print('2019特有:', end ='')for i in ls2019[:-1]:print(i, end =',')print(ls2019[-1])print('2018特有:', end ='')for i in ls2018[:-1]:print(i, end =',')print(ls2018[-1])
第10套题
第1小问素材(PY301-1.py)
# # 以下代码仅供参考。# ......
第1小问答案(PY301-1.py)
# # 以下代码仅供参考。# import jieba f=open('data.txt','r') data=f.read() f.close() f=open('clean.txt','w') s='' x=',。?、‘’“”;:、 )\n(!'for i in data:if i notin x: s+=i f.write(s) f.close()
# # 以下代码仅供参考。# import jieba f=open('clean.txt','r') data=f.read() l=jieba.lcut(data) d ={}for i in l:iflen(i)>=3: d[i]= d.get(i,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1],reverse =True)for i in lt[:9]:print(i[0],':',i[1],end=',',sep='')print(lt[9][0],':',lt[9][1],sep='') f.close()
第11套题
例题素材(PY301.py)
# 请在......处写多行代码# 建议不修改其他代码import jieba fp =open("红楼梦.txt",encoding='utf-8') ss=fp.read() fp.close()......print(cnt)......print(len(dc))...... lt.sort(key=lambda x:x[1], reverse=True)for x in lt[0:2]:......
参考答案(PY301.py)
# 请在......处写多行代码# 建议不修改其他代码import jieba fp =open("红楼梦.txt",encoding='utf-8') ss=fp.read() fp.close() point =",。:;?" cnt =0for i in ss:if i in point: cnt +=1print(cnt) words = jieba.lcut(ss) dc =[]for i in words:iflen(i)>=2: dc.append(i) dc1 =set(dc)print(len(dc1)) d ={}for i in dc: d[i]= d.get(i,0)+1 lt =list(d.items()) lt.sort(key=lambda x:x[1], reverse=True)for x in lt[0:2]:print("{},{}".format(x[0],x[1]))
第12套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码#import jieba fs =open("八十天环游地球.txt","r") lss = fs.readlines() ____________ dels=' "?!:,。' lens =0for lr in lss: …… print("共{}个非空行".format(lens)) alens =0 wlens =0for lr in lss: …… print("剩余字符数{}, 词语数{}".format(alens, wlens)) fo = ____________ for lr in lss: …… fo.close()
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码#import jieba fs =open("八十天环游地球.txt","r") lss = fs.readlines() dels=' "?!:,。' lens =0 new_list =[]for lr in lss:if lr !="\n": lens +=1 new_str =""for i inrange(len(lr)):if lr[i]in dels:passelse: new_str += lr[i] new_list.append(new_str)print("共{}个非空行".format(lens)) alens =0 wlens =0 word_list =[]for lr in lss: alens +=len(lr) words = jieba.lcut(lr)for i in words: word_list.append(i) wlens =len(word_list)print("剩余字符数{}, 词语数{}".format(alens, wlens)) fo =open("八十天环游地球-章节.txt","w")for lr in lss:if"章 "in lr: fo.write(lr) fo.close()
## 在……上补充一行或多行代码# 可修改其他代码#第一问:统计素材文件中学生人数 f1=open('data301.txt','rt') stu_lst = f1.readlines()print("素材文件中学生的人数是{}".format(len(stu_lst))) f1.close()#第二问:计算所有学生的平均分 stu_dic={}for stu_str in stu_lst:if'\n'in stu_str: stu_str=stu_str.replace('\n','') stu=stu_str.split(':') name=stu[0] score=stu[1].split(',')[1] stu_dic[name]= score avg=sum([int(score)for score in stu_dic.values()])/len(stu_dic)print("所有学生的平均分是{:.1f}".format(avg))#第三问:输出学生分数信息到result文件中 name_score=list(stu_dic.items()) name_score_lst=[item[0]+","+item[1]+"\n"for item in name_score] f2=open('result301.txt','wt')for i in name_score_lst: f2.write(i) f2.close()
第14套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# fi =open("data301.txt","r") ss=___________ print(ss.count("<a")) fi.seek(0) count =0 ls =[] flag =0 …… fi.close()print(count) fp =open("images.txt","w") …… fp.close()
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# fi =open("data301.txt","r") ss=fi.read()print(ss.count("<a")) fi.seek(0) count =0 ls =[] flag =0for i in ss.split("\n"):if".JPG"in i: count +=1 fi.close()print(count) fp =open("images.txt","w")for i in ss.split("\n"):if".JPG"in i: start_point = i.find("http://") end_point = i.find(".JPG") fp.write(i[start_point:end_point+4]+"\n") fp.close()
第15套题
例题素材(PY301.py)
## 在……上补充一行或多行代码# 可修改其他代码# stop_word=['我们','同时','之后','更好','这些','进行']#第一问:读文件,统计文件中的字符数 f1=open('data301.txt','rt') …… #第二问:统计词频,输出长度大于1的词的个数,排除特殊词import jieba …… for word in txt_wordslist: …… print("长度大于1且不相同的词的个数是{}。".format(len(word_count.items()))) …… wordlist.sort(key=lambda x:x[1],reverse=True) …… print("词频最大的词是:{}".format(topword))#第三问:将长度大于1并且词频最大的词所在的句子,排除特殊词 sentence_list=txt.split('。') …… for sentence in sentence_list:if topword in sentence: ……
参考答案(PY301.py)
## 在……上补充一行或多行代码# 可修改其他代码# stop_word=['我们','同时','之后','更好','这些','进行']#第一问:读文件,统计文件中的字符数 f1=open('data301.txt','rt') txt = f1.read()print("素材文件字符个数是{}。".format(len(txt))) f1.close()#第二问:统计词频,输出长度大于1的词的个数,排除特殊词import jieba txt_wordslist = jieba.lcut(txt) count =0 word_count ={}for word in txt_wordslist:if(len(word)>1)and(word notin stop_word): word_count[word]= word_count.get(word,0)+1print("长度大于1且不相同的词的个数是{}。".format(len(word_count.items()))) wordlist =list(word_count.items()) wordlist.sort(key=lambda x:x[1],reverse=True)for i in wordlist:if i[0]notin stop_word: topword = i[0]breakprint("词频最大的词是:{}".format(topword))#第三问:将长度大于1并且词频最大的词所在的句子,排除特殊词 sentence_list=txt.split('。') fo =open("out301.txt","w")for sentence in sentence_list:if topword in sentence: fo.write(sentence+"\n") fo.close()
第16套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# fi =open("data301.txt","r") dc ={} name ='' count =0 flag =1for line in fi:if'"name":'in line: name = line.____________[1].strip(' ,"\n') flag =1elif'"value":'in line and flag ==1: dx =int(line.split(':')[1].strip(' \n')) dc[name]= dx flag =0 ____________ fi.close()print("一共有{}个国家".format(count)) …… print("确诊人数最多的国家是{},人数是{}".format(____________)) lw =0 lz =0 …… print("确诊人数超过1W的国家有{}个".format(lw))print("确诊人数为0的国家有{}个".format(lz))
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# fi =open("data301.txt","r") dc ={} name ='' count =0 flag =1for line in fi:if'"name":'in line: name = line.split(':')[1].strip(' ,"\n') flag =1elif'"value":'in line and flag ==1: dx =int(line.split(':')[1].strip(' \n')) dc[name]= dx flag =0 count +=1 fi.close()print("一共有{}个国家".format(count)) lt =list(dc.items()) lt.sort(key=lambda x:x[1], reverse =True)print("确诊人数最多的国家是{},人数是{}".format(lt[0][0],lt[0][1])) lw =0 lz =0for i in lt:if i[1]>=10000: lw +=1elif i[1]==0: lz +=1print("确诊人数超过1W的国家有{}个".format(lw))print("确诊人数为0的国家有{}个".format(lz))
第17套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可以修改其他代码## 问题1:withopen("data301.csv","r")as f: lines=____________ for i inrange(5):print(lines[i])# 问题2:deftotal(lst):sum=0for i in lst:sum+=i returnsum yslst=[] zzlst=[] zylst=[]for line in lines[1:]: lst=line.split(',') …… print('统计,疑似,重症,治愈')print('总数,{},{},{}'.format(total(yslst),total(zzlst),total(zylst)))print('最大值,{},{},{}'.format(max(yslst),max(zzlst),max(zylst)))# 问题3: d={} ls=[]for line in lines[1:]: lst=line.split(',') d[lst[0]]=eval(lst[1]) …… for line in l: …… print(','.join(ls))
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可以修改其他代码## 问题1:withopen("data301.csv","r")as f: lines=f.read().split("\n")for i inrange(5):print(lines[i])# 问题2:deftotal(lst):sum=0for i in lst:sum+=i returnsum yslst=[] zzlst=[] zylst=[]for line in lines[1:]: lst=line.split(',')if lst !=[""]: yslst.append(eval(lst[1])) zzlst.append(eval(lst[2])) zylst.append(eval(lst[3]))print('统计,疑似,重症,治愈')print('总数,{},{},{}'.format(total(yslst),total(zzlst),total(zylst)))print('最大值,{},{},{}'.format(max(yslst),max(zzlst),max(zylst)))# 问题3: d={} ls=[]for line in lines[1:-1]: lst=line.split(',') d[lst[0]]=eval(lst[1]) l =list(d.items()) l.sort(key =lambda x:x[1], reverse =True) avg = total(yslst)/(len(lines)-2)for line in l:if line[1]> avg: ls.append(line[0])print(','.join(ls))
第18套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可以修改其他代码#import jieba fs =open("data301.txt","r") lss = fs.read() fs.close()for c in",。?!:":print('"{}"的个数为{}个'.format(____________)) ds ={} words=jieba.lcut(lss)for w in words: …… for i inrange(2,6):print('{}字词有{}个'.format(____________)) ……
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可以修改其他代码#import jieba fs =open("data301.txt","r") lss = fs.read() fs.close()for c in",。?!:":print('"{}"的个数为{}个'.format(c,lss.count(c))) ds ={} words=jieba.lcut(lss)for w in words: ds[len(w)]= ds.get(len(w),[]) ds[len(w)].append(w)for i inrange(2,6):print('{}字词有{}个'.format(i,len(ds[i]))) ls = ds[i] d ={}for j in ls: d[j]= d.get(j,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1], reverse =True)print(lt[0][0])
第19套题
例题素材(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可修改其他代码import jieba fs =open("data301.txt","r") lss = fs.readlines() fs.close() lens =0for lr in lss:if lr !="\n": lens +=1print("共{}个非空行。".format(lens)) ts ={}for lr in lss:if lr.strip()!="": words = lr.strip().split(":") ts[words[0]]= ts.get(words[0],[]) ts[words[0]].append(words[1]) names = ts.keys()print("共{}个人发言:{}".format(len(ts),",".join(names)))for r in ts.keys(): words =[]for i in ts[r]: words += jieba.lcut(i) d ={}for i in words:iflen(i)>1: d[i]= d.get(i,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1], reverse =True)print("{}说了{}个词,最多的词是:{}".format(r,len(lt), lt[0][0]))
参考答案(PY301.py)
## 在____________上补充代码# 在……上补充一行或多行代码# 可修改其他代码import jieba fs =open("data301.txt","r") lss = fs.readlines() fs.close() lens =0for lr in lss:if lr !="\n": lens +=1print("共{}个非空行。".format(lens)) ts ={}for lr in lss:if lr.strip()!="": words = lr.strip().split(":") ts[words[0]]= ts.get(words[0],[]) ts[words[0]].append(words[1]) names = ts.keys()print("共{}个人发言:{}".format(len(ts),",".join(names)))for r in ts.keys(): words =[]for i in ts[r]: words += jieba.lcut(i) d ={}for i in words:iflen(i)>1: d[i]= d.get(i,0)+1 lt =list(d.items()) lt.sort(key =lambda x:x[1], reverse =True)print("{}说了{}个词,最多的词是:{}".format(r,len(lt), lt[0][0]))