[Python]使用python统计docx文档字符、单词数

一、简介

本文介绍了如何使用python中的docx包统计.docx文档中的字符数、字数。

二、方法

1. 统计单个文档中的字符数

python 复制代码
#!/usr/bin/env python3
import docx

character_cnt = 0
document_file_path = "./input.docx"

doc = docx.Document(document_file_path)  # 打开 word 文档
for para in doc.paragraphs:  # 遍历 word 文档的所有段落
    character_cnt += len(para.text)  # para.text 为某段落的所有字符,len 即为段落字符数量

print("总字符数为:", character_cnt)

2.统计单个文档中的单词数

python 复制代码
#!/usr/bin/env python3
import docx

word_cnt = 0
document_file_path = "./input.docx"

doc = docx.Document(document_file_path)  # 打开 word 文档

for para in doc.paragraphs: # 遍历 word 文档的所有段落
    words = para.text.split()  # 根据空格分割单词
    word_cnt += len(words)

print("总单词数为:", word_cnt)

3.统计当前目录下所有文档中的字符数、字数

python 复制代码
#!/usr/bin/env python3

import os
import docx

path = './'  # word文档文件夹路径
word_list = os.listdir(path)  # 获取文件夹下的文件列表


for i in word_list:
    if i.endswith(".docx"):
        character_cnt = 0
        word_cnt = 0
        doc = docx.Document(path + '{}'.format(i))  # 打开每一个 word 文档
        for para in doc.paragraphs:  # 遍历某一个 word 文档的所有段落
             character_cnt+= len(para.text)  # para.text 为某段落的所有字符,len 即为段落字符数量
        
        for para in doc.paragraphs:
            words = para.text.split()  # 根据空格分割单词
            word_cnt += len(words)
        print("文档:", i)
        print("总字符数为:", character_cnt)
        print("总单词数为:", word_cnt)

三、参考

1\].[Python实现word文档的字数统计](https://blog.csdn.net/lzlxlzy/article/details/121630112)

相关推荐
zhangfeng113312 分钟前
把“距离过近”的节点(或端点)合并成一个,避免重复。机器学习 python
人工智能·python·机器学习
白应穷奇1 小时前
编写高性能数据处理代码 02
后端·python
用户11906708018321 小时前
掌控python的属性,描述符钩子函数
python
阿赵3D1 小时前
selenium自动化收集资料
python·selenium·测试工具·自动化
AI手记叨叨1 小时前
Python分块读取大型Excel文件
python·excel
无限大.1 小时前
《计算机“十万个为什么”》之 面向对象 vs 面向过程:编程世界的积木与流水线
网络·人工智能·python
白葵新2 小时前
C#案例实战
c++·python·算法·计算机视觉·c#
Cosolar2 小时前
下一代 Python Web 框架?FastAPI 全面解析与实战对比
后端·python
AIGC_北苏2 小时前
本地使用uv管理的python项目怎么部署到服务器?
python·uv
Yuner20003 小时前
Python深度学习:从入门到进阶
python·深度学习