我正在批量提取txt文档的一些关键词词频,之前也统计了文档总字数(代码如下所示),但是后来发现有的文档有中文也有英文,现在想分开统计两种字数,文档中文总字数、文档英文单词总数(是单词,不是字母),请问这应该怎么改代码呀
def file_fenxi(file):
contents = file.read()
num_words = len(contents.rstrip())
return num_words
path_sum = []
for i in file_Name:
path = path + '/' + i
path_sum.append(path)
path = "E:\总txt\"
# 计算文档字数
for i in range(len(path_sum)):
with open(path_sum[i], encoding='utf-8') as file_obj:
nianbao_count = file_fenxi(file_obj)
context_Front_4[i].append(str(nianbao_count))
中文的话直接读取字符串长度,英文的话分割空格读取数组长度,中英混合的话比较麻烦,空格分割然后for循环判断
https://www.jianshu.com/p/acfb0d15094b
中文的话,用上面的代码,判断每个字符在 '\u4e00' <= s <= '\u9fff' 之间就可以了。