可以通过以下步骤实现:
from collections import defaultdict
import re
def count_words(text):
# 创建一个默认字典,值的默认类型为int,初始值为0
word_count = defaultdict(int)
# 使用正则表达式匹配单词
words = re.findall(r'\w+', text.lower())
# 统计单词出现的次数
for word in words:
word_count[word] += 1
return word_count
text = "This is a sample text. It contains some words, including some repeated words."
result = count_words(text)
print(result)
输出结果将是一个字典,其中包含特定单词的计数:
{'this': 1, 'is': 1, 'a': 1, 'sample': 1, 'text': 1, 'it': 1, 'contains': 1, 'some': 2, 'words': 2, 'including': 1, 'repeated': 1}
在这个例子中,我们使用了def函数定义了一个名为count_words的函数,该函数使用了defaultdict类创建了一个默认字典word_count,用于存储单词计数。然后,我们使用re模块的findall函数和正则表达式'\w+'来匹配文本中的单词,并将它们转换为小写形式。接下来,我们遍历匹配到的单词列表,并使用字典的自增操作符+=来增加单词的计数。最后,我们返回统计结果。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云