计算2个字符串中相同字母的数量

时间:2019-10-10 15:49:51

标签: python

我需要计算两个字符串中共有多少个共享字母。

s1="hello"
s2="leeo"

def shared(s1, s2):
    for letter in s2:
        if letter in s1:
            find = s2.count(s1)
            print(find)

它给我的输出:

0
0
0
0
0
0
0
None

但是它应该是:

3

我有点迷茫了。

2 个答案:

答案 0 :(得分:2)

您的问题是您要计算字符串'hello''leo'的出现,该字符串正好为0,因为字符串'hello''leo'中不存在。

在您的情况下,变量letter在循环中一个接一个地保存值'l''e''o'。要使代码正常工作,请将行更改为

find = s1.count(letter)

答案 1 :(得分:1)

尝试这个:

s1="hello"
s2="leo"

def shared(s1, s2):
  find = 0

  for letter in s2:
      if letter in s1:
          find += 1
  return find

print(shared(s1, s2))