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

相关推荐
ValhallaCoder6 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎6 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
八零后琐话7 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
青春不朽5128 小时前
Scrapy框架入门指南
python·scrapy
MZ_ZXD0019 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
全栈老石9 小时前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python
梨落秋霜9 小时前
Python入门篇【模块/包】
python
阔皮大师10 小时前
INote轻量文本编辑器
java·javascript·python·c#
小法师爱分享11 小时前
StickyNotes,简单便签超实用
java·python