[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)

相关推荐
少林码僧5 小时前
2.31 机器学习神器项目实战:如何在真实项目中应用XGBoost等算法
人工智能·python·算法·机器学习·ai·数据挖掘
智航GIS5 小时前
10.4 Selenium:Web 自动化测试框架
前端·python·selenium·测试工具
jarreyer5 小时前
摄像头相关记录
python
宝贝儿好5 小时前
【强化学习】第六章:无模型控制:在轨MC控制、在轨时序差分学习(Sarsa)、离轨学习(Q-learning)
人工智能·python·深度学习·学习·机器学习·机器人
大、男人5 小时前
python之asynccontextmanager学习
开发语言·python·学习
默默前行的虫虫6 小时前
nicegui文件上传归纳
python
一个没有本领的人7 小时前
UIU-Net运行记录
python
国强_dev7 小时前
Python 的“非直接原因”报错
开发语言·python
副露のmagic7 小时前
更弱智的算法学习 day24
python·学习·算法
廖圣平7 小时前
从零开始,福袋直播间脚本研究【三】《多进程执行selenium》
python·selenium·测试工具