Skip to main content
 首页 » 编程设计

Python比较两个字符串

2025年05月04日32freeliver54

是否有函数可以比较两个字符串(相同长度)相差多少个字符?我的意思是只有替代品。例如,AAA 将与 AAT 相差 1 个字符。

请您参考如下方法:

这会起作用:

>>> str1 = "AAA" 
>>> str2 = "AAT" 
>>> sum(1 for x,y in enumerate(str1) if str2[x] != y) 
1 
>>> str1 = "AAABBBCCC" 
>>> str2 = "ABCABCABC" 
>>> sum(1 for x,y in enumerate(str1) if str2[x] != y) 
6 
>>> 

上述解决方案使用sum , enumerate , 和一个 generator expression .


因为 True 可以评估为 1,您甚至可以这样做:

>>> str1 = "AAA" 
>>> str2 = "AAT" 
>>> sum(str2[x] != y for x,y in enumerate(str1)) 
1 
>>> 

但我个人更喜欢第一种方案,因为它更清晰。