【问题标题】:how can I match specific letter and count its frequency? [duplicate]如何匹配特定字母并计算其频率? [复制]
【发布时间】:2016-09-02 22:57:58
【问题描述】:

使用正则表达式,我想计算特定的字母。我做了一个如下所示的匹配对象。但不知道如何计算它的频率。大多数计数示例都是针对单词的,因此我找不到很好的参考。

f = open("C:\Python27\test.txt")
raw_sentence = f.read
upper_sentence = raw_sentence.upper()
match = re.findall(r"A", upper_sentence)

我应该像其他字数统计代码一样制作一些列表数据吗?

【问题讨论】:

标签: python counting


【解决方案1】:

只需使用str.count:

raw_sentence.upper().count('A')

如果你想计算多个元素,最好使用collections.Counter

>>> s = 'abcabcsdab'
>>> import collections
>>> collections.Counter(s)
Counter({'a': 3, 'b': 3, 'c': 2, 'd': 1, 's': 1})

【讨论】:

    猜你喜欢
    • 2012-10-24
    • 2019-07-09
    • 2013-03-20
    • 2015-01-26
    • 2018-06-14
    • 2017-04-20
    • 2023-03-25
    • 1970-01-01
    相关资源
    最近更新 更多