我有2个字符串作为输入(第1行和第2行),我希望一次比较1个字符,以确定它们是否匹配,或者它们是否匹配。这有可能与python?这些行本身是从2个较大的文件中迭代出来的.Incase将影响选项。
Match1=0
if c ::1 in line2_rev == c ::1 in line1:
Match1+=1
上面是我尝试过的代码,我使用c来表示每个字符,因为我看到之前在某个地方使用过但不确定这本身是否正确。我使用Match1 + = 1,这样我可以在匹配的数量结束时给出一个数字。
答案 0 :(得分:3)
如果您想获得匹配发生的位置,请使用此
line1, line2 = 'first', 'frost'
for k, (x, y) in enumerate(zip(line1, line2)):
print('Match' if x == y else 'Mismatch', 'on position', k)
输出:
Match on position 0
Mismatch on position 1
Mismatch on position 2
Match on position 3
Match on position 4
如果您想知道匹配的总数,可以使用sum
和operator.eq
(由@eryksun建议):
from operator import eq
print(sum(map(eq, line1, line2))) # 3