I am a teacher!

导航

习题解析之:统计英文文件中的单词数

【问题描述】

open(name[, mode[, buffering]])函数可以打开诸如txt,csv等格式的文件。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

如下,定义了read_file()函数:

def read_file(file):
"""接收文件名为参数,读取文件中的数据到字符串中,返回字符串"""
       with open(file, 'r', encoding='utf-8') as text: # 创建文件对象
              txt =text.read()  # 读文件为字符串
       return txt # 返回字符串
read_file(file)可以读取名为file的文件内容,以字符串的形式返回txt,请继续编程统计字符串txt中单词的数量。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

提示:统计单词数量时,形如It’s、Let's、don't的缩写形式要按2个单词计数。另外为了处理方便,约定所有测试文件中没有's表示所有格的情况。

输入格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬
输入为一行,是一个文本文件名,如example1.txt。

输出格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬
输出为一行,是对名为example1.txt的文件内容进行单词数目统计后的结果, 输出共有m个单词,具体格式见示例。

示例‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬
输入:mySunshine.txt
输出:共有7个单词

【编程思路】

        先读取 'step10/' 文件夹中用户输入的文件名得到文件内容,存入text字符串,再用空格替换字符串 text 中所有的标点符号(包括 ,;.'?! 等),然后根据空格将字符串切分为列表,列表中元素的个数就是单词的个数。
        编写的源程序如下:

        image

posted on 2025-11-28 15:16  aTeacher  阅读(33)  评论(0)    收藏  举报