Python 自动化办公实战课
尹会生
前游戏公司技术总监,前新浪网研发中心技术经理
21781 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 37 讲
Python 自动化办公实战课
15
15
1.0x
00:00/00:00
登录|注册

07|快速读写文件:如何实现跨文件的字数统计?

append()
isspace()
isdigit()
isalpha()
字典
元组
列表
write()
open()
rstrip()
len()
readlines()
readline()
read()
字典数据类型
列表数据类型
字符串类型
合适的变量数据类型
for循环
将统计结果写入文件
统计文件的字数
文件读取到内存
扩展需求:统计中文、英文和标点符号各自的数量
多个文件字数统计
单个文件字数统计
Python实现跨文件的字数统计
快速读写文件:如何实现跨文件的字数统计?
参考文章

该思维导图由 AI 生成,仅供参考

你好,我是尹会生。这节课,我们来学习下统计多个文件字数的方法。
之前我在出版图书的时候,每个章节都写入了一个单独的 Word 中,这就导致我无法使用 Word 自带的字数统计功能,一次性统计所有章节的字数,自然也就不能分别统计多文件的汉字、英语和标点符号的字数了。如果你在工作中也遇到过类似的情况,需要一次性统计大量的文本文件的字数,应该怎么解决呢?
今天我就来教你,怎样使用 Python 来批量统计多个文件的字数和标点符号。
首先呢,我们先学习一下简单的操作:统计单个文件的字数。掌握了 Python 统计字数的基本操作,批量统计也就不在话下了。

怎样实现单个文件字数统计

统计单个文件的字数,需要用到 Python 的文件读写函数和变量这两个功能。Python 的读写函数是对文件内容的读取操作,变量呢,用来存储统计好的文件字数。
我把统计单个文件字数的操作分为三个步骤,分别为:
先把要统计的文件读入内存;
再对读入到内存的字数数量进行统计,并用变量保存;
最后是将结果写入统计字数的专用文件中。
我先来带你学习一下用 Python 读取文件需要使用哪些函数和语法。

1. 把文件内容读取到内存中

Python 实现读取文件内容到内存的函数有三个,这三个函数原理相同,但是读取的内容多少有些不同,分别为:
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文详细介绍了如何使用Python实现跨文件的字数统计。作者首先讲解了统计单个文件字数的方法,包括文件内容读取到内存和字数统计。然后详细讲解了Python读取文件内容到内存的函数和语法,以及正确设置文件路径和字符编码。作者强调了使用with关键字减少资源浪费和数据丢失的风险。此外,作者提到了在进行文件字数统计时需要注意内存不足的问题,并给出了相应建议。文章还介绍了如何统计多个文件的字数,使用for循环和合适的数据类型存储统计结果。此外,还讨论了Python支持的数据类型及其适用场景。最后,文章扩展了需求,介绍了如何统计中文、英文和标点符号各自的数量,并使用字典+列表的方式存储统计结果。整体来说,本文通过具体的代码示例和详细的解释,帮助读者快速了解了如何使用Python实现跨文件的字数统计,为读者提供了实用的技术指导。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 自动化办公实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • Soul of the Dragon
    在进行多个文件的中、英文和标点符号各自的数量统计时,我会使用字典+列表的方式,其中文件名作为字典的键,列表作为字典的值,列表当中的元素分别是中文、英文和标点符号的数量。

    作者回复: 这是目前比较理想的数据类型用法之一, 后续我还会给你讲扩展数据类型,已经怎样灵活组合这些数据类型,把基本类型的封装交给Python来做,解放我们的双手

    2021-02-25
    2
  • 附近
    老师,我想请问下,我想要读取一个目录及其子目录下的所有文件中包含某个特定字符的文件名和字符所在行号,应该怎么做呢,有什么好的推荐吗?

    作者回复: 遍历目录和所以子目录,可以使用: os.listdir(“指定目录”)的方法 如果还需要过滤特殊字符,就需要将上面的结果再使用正则表达式进行过滤

    2021-10-18
    1
  • 老师,想请教一下,python如何根据指定的时间日期和指定时区判断是否夏令时阿,比如dt=datetime.striptime(“2021-04-24 20:00:00”,”%Y-%m-%d %H-%M-%S”)) dt.astimezone(tz=puts.timezone(“Africa/Casablanca”)).timetuple.tm_isdst 这个方法对于卡萨布兰卡这个地区不准确。 有其他方法么,用python自带标准库

    作者回复: Python自带库判断夏令时只有tm_isdst这一种属性,没有其他方式了 参考一下官方文档,看看是否在时间格式和字符串格式转换的时候出现了问题。 官方文档地址如下: https://docs.python.org/zh-cn/3.7/library/time.html

    2021-04-23
  • Soul of the Dragon
    老师,请问我在运行“current_path = pathlib.PurePath(__file__).parent”这行代码时,为什么会出现“NameError: name '__file__' is not defined”这样的报错呢?

    作者回复: 是不是在Python的交互式环境运行了这段程序呢? __file__必须在使用 python xxx.py 的形式运行才能正确得到python脚本文件的完整路径

    2021-02-25
  • ifelse
    学习打卡
    2023-07-06归属地:浙江
  • Bill
    学习打卡
    2021-10-19
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部