[英]How to set a word count in a text file
我需要查找文件中的單詞數。 長度大於等於1且刪除了開頭和結尾的非字母數字字符的任何字母數字字符序列都算作一個單詞。
這是我到目前為止的代碼:
num_words = 0
textfile = open('gettysburg.txt', 'r').read()
words = textfile.split()
for word in words:
if len(word) >= 1:
num_words +=1
print(num_words)
計數器給了我268,但是文本中有271個單詞。 由破折號或“-”分隔的四個單詞被計為2個單詞。 如何去除非字母字符以顯示這四個單詞?
我不希望您要刪除連字符,而只是希望將它們標注為可以構成單詞的字符。 您可以使用正則表達式。
re.findall('[\w\-]+', 'words in sentence. some hyphenated-together.')
給
['words', 'in', 'sentence', 'some', 'hyphenated-together']
嘿,你真貼心。
string.split()
函數采用參數str
,默認情況下為空白。 您還可以更改字符串分割的字母。
num_words = 0
textfile = open('gettysburg.txt', 'r').read()
words = textfile.split()
for word in words:
count = len(word.split(str = "-"))
num_words += count
print(num_words)
Python教程對此功能進行了很好的描述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.