Python 中计算两个字符串之间匹配的次数

3 投票
1 回答
5163 浏览
提问于 2025-04-18 06:08

给定两个长度相同的字符串,怎么才能返回这两个字符串在某个位置上相同字符的次数呢?

比如说:count_matches("bob","boa") 这个函数会返回 2,因为在索引 0 和索引 1 的位置上,两个字符串的字符都是相同的。

但是,如果你用 count_matches('bob', 'bbo'),它只会返回 1,因为在这两个字符串中,只有索引 0 的字符是相同的。虽然两个字符串里都有两个 'b',但只有 一个 是在对应的位置上。

1 个回答

13

我猜你是想问两个字符串中,字符相同的地方有多少个。

所以,我会这样做:

>>> sum(a==b for a, b in zip('bob', 'boa'))
2

把这个放到一个函数里应该很简单。

撰写回答