猫史档案馆


【Python作品分享】词频统计【教程贴】

用户:智酷天下!智酷天下!查看:1 回复:4 评论:1 创建时间:2020-04-19T12:29:49


【作品展示】

center_image

 

【作品介绍】

每个句子之间用|分开,每个单词用空格分开,统计每个单词出现的次数

 

【作品源代码】

b = input("输入:").split("|")
b = " ".join(b)
b = list(b)
a = ['']*len(b)
i = 0
n = 0
while n < len(b):#以空格为分割,把每个字母变成单词,再放到一个列表中
    if b[n] != " ":
        a[i] = a[i] + b[n]
    else:
        i = i + 1
    n = n + 1
i = 0
print("词频统计结果:")
while i < len(a):
    number = 0
    n = 0
    num = 0
    while n < len(a):  # 计算每一个元素出现的次数
        if a[i] == a[n]:
            num = num + 1
        n = n + 1
    n = i + 1
    while n < len(a):
        if a[i] == a[n]:
            number = 1
        n = n + 1
    if number != 1 and a[i] != "":
        print("{0}:{1}".format(a[i],num))
    i = i + 1       
#安徽省宣城市李想制作

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
LAG的1048576一枚LAG的1048576一枚

b=list(map(lambda a: a.split(' '),input().split('|')))
a={}
for i in b:
    a[i]=sum([1 for i in b if i==b]) #用字典自动去重
for key,value in a.items():
    print(key,':',value)

点赞2


评论


煤黑烧饼煤黑烧饼

set去重,请

点赞0


评论


煤黑烧饼煤黑烧饼

统计中文的:

import jieba

jieba.setLogLevel(20)
n = input('输入要统计的文本:')
n = tuple(jieba.cut(n.replace("\n", ""), cut_all=False))
pu = set(n)
dic = dict(zip(pu, [0] * len(pu)))
for i in n:
    dic[i] += 1
dic = sorted(dic.items(), key=lambda kv: (kv[1], kv[0]))
dic.reverse()
with open('统计报告.txt', 'w+', encoding='utf-8') as f:
    f.write('=' * 8 + '词频统计报告' + '=' * 8 + '\n')
    for i in dic:
        f.write('词语“{0}”出现了{1}次\n'.format(i[0], i[1]))
    f.write('=' * 5 + '统计完毕,共有{}种词,全文长{}个词'.format(len(dic), len(n)) + '=' * 5)
print('统计完毕!已生成报告于同级目录下')
input('回车以退出')

统计英文的:

import re
n = input('输入要统计的文本:')
n = [i for i in re.split(r'[,.\s!?]', re.sub(r'\n',' ',re.sub(r'-\n','',n.strip().lower()))) if i!='']
pu = set(n)
dic = dict(zip(pu, [0] * len(pu)))
for i in n:
    dic[i] += 1
dic = sorted(dic.items(), key=lambda kv: (kv[1], kv[0]))
dic.reverse()
with open('统计报告.txt', 'w+', encoding='utf-8') as f:
    f.write('=' * 8 + '词频统计报告' + '=' * 8 + '\n')
    for i in dic:
        f.write('词语“{0}”出现了{1}次\n'.format(i[0], i[1]))
    f.write('=' * 5 + '统计完毕,共有{}种词,全文长{}个词'.format(len(dic), len(n)) + '=' * 5)
print('统计完毕!已生成报告于同级目录下')
input('回车以退出')

点赞0


评论


uiuiuiuiuiuiuiuiuiuiuiui

emotion_编程猫_搓头

import turtle

点赞0


评论