python - 计算2个字符串中相同字母的数量
问题描述
我需要计算 2 个字符串中有多少共享字母。
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
我有点迷失了这个。
解决方案
您的问题是您计算了'hello'
字符串中的出现次数'leo'
,这恰好是 0,因为字符串'hello'
中不存在'leo'
.
在您的情况下,变量在循环中一个接一个地letter
保存值'l'
, 。要使您的代码正常工作,请将行更改为'e'
'o'
find = s1.count(letter)
推荐阅读
- laravel - 用户连接
- javascript - 我在按钮上添加了一个“加号”。当用户点击按钮时,“加”号被替换为“减号”并显示 div 内容
- javascript - 以编程方式创建角度组件工具提示
- html - 如何正确使用 `XPath` 定位器,例如`parent`、`child`、following-sibling`?
- mysql - 通过在sql中对多于一列进行分组来查找列中的最小值
- sql - 在 where 子句中加入的 case 语句
- angular - 我在哪里从 `@agm/core` 中导入 `PlaceResult`
- ios - Swift TableView 与 UIPanGestureRecognizer 冲突
- scala - Akka-http 检测客户端连接关闭
- excel - 为什么这仅将格式应用于 A 列而不是选定的 J 列