如何使用python按位置计算字符串中相同字符的数量?

Uri*_*son 1 python string

例如:

String 1: AGGCCT
          || | |
String 2: AGCCAT
Run Code Online (Sandbox Code Playgroud)

这两个字符串在4个位置是相同的,所以我想要的函数将返回4.

除了同时迭代两个字符串的明显方法之外,还有一种聪明的(即快速)方法吗?

谢谢!乌里

小智 7

我不认为任何"聪明"的技巧会胜过明显的方法,如果它执行得很好:

sum(c1 == c2 for c1, c2 in itertools.izip(s1, s2))
Run Code Online (Sandbox Code Playgroud)

或者,如果使用布尔算术让你烦恼,

sum(1 for c1, c2 in itertools.izip(s1, s2) if c1 == c2)
Run Code Online (Sandbox Code Playgroud)