gpt4 book ai didi

python - 如何比较两个列表?

转载 作者:太空宇宙 更新时间:2023-11-03 17:41:40 26 4
gpt4 key购买 nike

我被要求比较两个不同的字符串并返回不匹配的结果。如果一个字符串比另一个字符串长,则输出多余的字符。

characters1=list(contents1)
characters2=list(contents2)
for (a,b) in zip(characters1, characters2):
if a != b:
print('Mismatch at character', characters1.index(a), a, '!=', b)

这是我所做的,我无法弄清楚额外的部分。

最佳答案

我会使用itertools.izip_longest在这里,类似:

for idx, (a, b) in enumerate(izip_longest(s1, s2)):
if a and b:
if a != b:
print 'Mismatch at {0}: {1} != {2}'.format(idx, a, b)
else:
suffix = (s1 if a else s2)[idx:]
print 'Extra string: {0}'.format(suffix)
break

另请注意,index() 返回项目的第一个入口,因此如果该字符在字符串中重复,则可能会返回错误的结果。 enumerate是要走的路。将字符串转换为列表也是多余的,字符串已经是可迭代的。

关于python - 如何比较两个列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30453110/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com