weixin_46126484
2020-03-01 17:54
采纳率: 100%
浏览 537

请问该怎么批量统计文件夹里每个txt文档的中文字数以及英文单词总数,然后再导出呀?

我正在批量提取txt文档的一些关键词词频,之前也统计了文档总字数(代码如下所示),但是后来发现有的文档有中文也有英文,现在想分开统计两种字数,文档中文总字数、文档英文单词总数(是单词,不是字母),请问这应该怎么改代码呀

统计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))

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 失迹丶 2020-03-01 18:02
    已采纳

    中文的话直接读取字符串长度,英文的话分割空格读取数组长度,中英混合的话比较麻烦,空格分割然后for循环判断

    点赞 评论
  • blownewbee 2020-03-01 18:03

    https://www.jianshu.com/p/acfb0d15094b
    中文的话,用上面的代码,判断每个字符在 '\u4e00' <= s <= '\u9fff' 之间就可以了。

    点赞 评论

相关推荐 更多相似问题