计算python3中文本文件的单词

时间:2019-09-08 23:19:56

标签: python

我正在学习python,我想创建一个程序来计算文本文件中单词的总数。

fname = input("Enter file name: ") 
with open(fname,'r') as hand:
     for line in hand:
         lin = line.rstrip()
         wds = line.split()
         print(wds)
     wordCount = len(wds)
     print(wordCount)

我的文本文件的内容为: 您好,这是我的测试程序 我是python的新手 谢谢


分割后打印wds时。 我从文本文件中获得了拆分后的文本,但是当我尝试打印长度时,我只是得到了最后一个单词的长度。

2 个答案:

答案 0 :(得分:1)

您需要初始化wordCount = 0,然后在for loop内每次迭代时都需要添加到wordCount中。像这样:

wordCount = 0
for line in hand:
    lin = line.rstrip()
    wds = lin.split()
    print(wds)
    wordCount += len(wds)
print(wordCount)

答案 1 :(得分:0)

有四件事要做:

  • 打开文件
  • 从文件中读取行
  • 从行中读单词
  • 打印字数

因此,只需按此顺序执行;)

with open(fname,'r') as f:
    words = [word for line in f
             for word in line.strip().split()]
print(f"Number of words: {len(words)}")