关于python词频和百分比计算的问题

2025-04-14 22:12:49
推荐回答(1个)
回答1:

不能使用其他包是吧,只能自己编写方法读取?

import re
# ./tt.txt" 替换为你的文件路径
file = open("./tt.txt")
r = re.compile(r"\w+")
word_list = r.findall(file.read())
word_length = len(word_list)
d = {}
for word in word_list:
    if word in d:
        d[word]['count']+=1
        d[word]['percent'] = d[word]['count']*1.0/word_length
    else:
        d[word] = {"count":1, "percent": 1.0/word_length}
print(d)
# 输出结果:没有对百分比做处理,你可以自行处理
{'alpha': {'count': 2, 'percent': 0.15384615384615385}, 
'learn': {'count': 2, 'percent': 0.15384615384615385}, 
'english': {'count': 1, 'percent': 0.07692307692307693}, 
'hello': {'count': 1, 'percent': 0.07692307692307693}, 
'sads': {'count': 1, 'percent': 0.07692307692307693}, 
'sadasd': {'count': 1, 'percent': 0.07692307692307693}, 
'ni': {'count': 1, 'percent': 0.07692307692307693}, 
'hao': {'count': 1, 'percent': 0.07692307692307693}, 
'lol': {'count': 1, 'percent': 0.07692307692307693}, 
'kell': {'count': 2, 'percent': 0.15384615384615385}}
# tt.txt 测试文件内容
alpha learn english hello,sads
sadasd
ni hao
lol
kell
kell
alpha
learn