使用Python去统计文本字数(可以选择排除标点符号)

1,要实现整个功能需要两部分准备:一是循环文本;二是计数函数。

这就不得不说python的import函数的便捷,把这两部分分别写在不同.py文件中,使用时直接调用。

这是计数函数:

# this is a 'count words' function
from pathlib import Path
import re
# import string


def count_word(file):
    # read the text content
    file_read = Path(file)
    content = file_read.read_text(encoding='utf-8')

    #the first way
    # #make a translation table
    # trans = str.maketrans('','',',。?!“ ” ;:')
    # #too much troublesome to mark all the Chinese punctuation
    # processed_content = content.translate(trans)

    #the second way
    # use regular expression
    processed_content = re.sub(r'[^\w\s]','',content)

    # process the result
    result = len(list(processed_content))

    # print the text
    print(f"the text in {file} has {result} words")
    return result

这是执行部分:

import test_11
from test_11 import count_word

book_list = ['test.txt', 'text_01.txt']
for i in book_list:
    count_word(i)


#the text in test.txt has 9 words
#the text in text_01.txt has 440 words

随便找几个文本试一试。

例如:

大概率,就是某一天晚上独自从图书馆出来走回宿舍的路上。
从南门出来,抬起头便在屋檐下看见了天边被云雾半掩着的月亮,有人说,
月似吴钩,也比玉盘,或时为缺,亦有圆。可我在校园里,只见过缺月,未曾目睹过圆月。
只那一瞬,心里便有了无限的落寞,孤寂,悲伤。打开蓝牙,连接耳机,找到音乐,拾级而下,
借着黯淡的路灯,走着早已烂熟于心的路,我看着过路的行人,时间已经将近十点
,可是大学的校园却是丝毫不冷清的,篮球场上,有练球的男生; 小吃街里,有排队买宵夜的女生;
路边椅子上,有情意绵绵的情侣。他们一个个在我回宿舍的路上映入眼底,
可此时的我却离这些情景好远,这些事情都是美好的,可是这些美好的事,不管我是否曾经经历过,与我而言,
又有什么快乐可言?我看着自己的影子,在路灯的映照下,由长变短,又由短变长,
可不管这个时候的影子怎么变,我的心情却是变不好了的。遗憾,这个词此刻在我的心窝里无限放大,
仿佛一个冬眠结束的刺猬,慢慢舒展自己的身躯,用它身上的刺,弄疼我的心。
目前为止,我是不成功的,高考失利,
原本对大学充满憧憬的我只得安慰自己,既来之则安之,况且,这也不算是一个差的令人发指的结果?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值