『python3』WordCount 简易字典生成式统计

2024-04-16 11:27:52 浏览数 (5)

普通循环统计

将文章内容拆分成词语列表,循环统计每个词语出现的次数,语法相对繁琐

代码语言:javascript复制
if __name__ == '__main__':
    文章内容 = 'Seven days absence is like a week apart , but one week is seven days , is not it ? '
    词语列表 = 文章内容.split()
    print(词语列表)
    字典统计 = {}
    for 词语 in 词语列表:
        词语 = 词语.lower()
        if 词语 in 字典统计:
            字典统计[词语]  = 1
        else:
            字典统计[词语] = 1
    print(字典统计)

统计结果:

代码语言:javascript复制
['Seven', 'days', 'absence', 'is', 'like', 'a', 'week', 'apart', ',', 'but', 'one', 'week', 'is', 'seven', 'days', ',', 'is', 'not', 'it', '?']
{'seven': 2, 'days': 2, 'absence': 1, 'is': 3, 'like': 1, 'a': 1, 'week': 2, 'apart': 1, ',': 2, 'but': 1, 'one': 1, 'not': 1, 'it': 1, '?': 1}

生成式统计

使用列表生成式和字典生成式,生成统计结果,语法更加简洁

代码语言:javascript复制
词语列表 = [词语.lower() for 词语 in 词语列表]
统计结果 = {词语: 词语列表.count(词语) for 词语 in 词语列表}
print(统计结果)

统计结果:

代码语言:javascript复制
{'seven': 2, 'days': 2, 'absence': 1, 'is': 3, 'like': 1, 'a': 1, 'week': 2, 'apart': 1, ',': 2, 'but': 1, 'one': 1, 'not': 1, 'it': 1, '?': 1}

1 人点赞