无空隙回声输出
描述
获得用户输入,去掉其中全部空格,将其他字符按收入顺序打印输出。
s = input()
s = s.replace(' ', '')
print(s)
3600321587456352371
文件关键行数
描述
关键行指一个文件中包含的不重复行。关键行数指一个文件中包含的不重复行的数量。
统计附件文件中与关键行的数量。
with open('latex.log', 'r', encoding='utf-8') as f:
rows_set = set(f.readlines())
print('共{}关键行'.format(len(rows_set)))
3600321587456370192
字典翻转输出
描述
读入一个字典类型的字符串,反转其中键值对输出。
即,读入字典key:value模式,输出value:key模式。
输入格式
用户输入的字典格式的字符串,如果输入不正确,提示:输入错误。
输出格式
给定字典d,按照print(d)方式输出
s = input()
try:
dict_1 = eval(s)
dict_2 = dict(zip(dict_1.values(), dict_1.keys()))
print(dict_2)
except:
print('输入错误')
00340034003600321587456388580
《沉默的羔羊》之最多单词
描述
附件是《沉默的羔羊》中文版内容,请读入内容,分词后输出长度大于2且最多的单词。
如果存在多个单词出现频率一致,请输出按照Unicode排序后最大的单词。
输入格式
文件
输出格式
字符串
import jieba
with open('沉默的羔羊.txt', 'r', encoding='utf-8') as f:
txt = f.read()
words = jieba.lcut(txt)
counts = {}
for word in words:
# 过滤长度为1的单词
if len(word) == 1:
continue
else:
counts[word] = counts.get(word, 0) + 1
# 对词语根据出现的频率进行排序
wordlst = list(counts.items())
wordlst.sort(key=lambda x:x[1], reverse=True)
maxfreq = wordlst[0][1] # 确定最大的频率
maxfreqwords = [] # 新建一个最大频率单词的列表(假设存在多个单词频率相同,且频率最大)
for i in wordlst:
if i[1] == maxfreq:
maxfreqwords.append(i)
else:
break # 一旦遍历至频率值小于最大频率值时,跳出,不必继续遍历,节约计算时间
maxfreqwords.sort(key=lambda x:x[0], reverse=True) # 按照Unicode排序
print(maxfreqwords[0][0])