擅长:python、mysql、java
<p>我会在这里使用<a href="https://docs.python.org/2/library/itertools.html#itertools.izip_longest" rel="nofollow">itertools.izip_longest</a>,比如:</p>
<pre><code>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
</code></pre>
<p>还要注意<code>index()</code>返回项目的第一个入口,因此如果字符串中重复该字符,则可能返回错误的结果。<a href="https://docs.python.org/2/library/functions.html#enumerate" rel="nofollow">enumerate</a>就是要走的路。将字符串转换为列表也是多余的,字符串已经是iterable了。你知道吗</p>