两个字符串中的常用字母数

Max*_*hon 6 python set venn-diagram

我使用此代码collections Counter来查找两个字符串中的常用字母数.

from collections import Counter

a = "abcc"
b = "bcaa"

answer = 0

ac = Counter(a)
bc = Counter(b)

for key in ac:
    answer += min(ac[key], bc[key])

print answer
Run Code Online (Sandbox Code Playgroud)

该解决方案试图找到两个字符串中常见字母的数量(仍然计算相同的字母)我的问题是,我开发了这个逻辑,但我担心它可能是一个轮子重新发明.是否有任何介绍的方法,或更简单的方法吗?

注意:我的问题不同于试图找到字符串之间的常用字母的问题,我只需要计数,所以我希望找到一些基本的东西.

小智 -1

要计算字符串中字母的出现次数,您可以使用字典;

a = "abcc"
counter = {}


for key in a:
    if key in counter:
        counter[key]+=1
    else:
        counter[key]=1
Run Code Online (Sandbox Code Playgroud)

柜台

{'a': 1, 'b': 1, 'c': 2}
Run Code Online (Sandbox Code Playgroud)

  • 这就是“collections.Counter” (2认同)