擅长:python、mysql、java
<p>你的问题是你没有把a和b分开处理。考虑a的长度为4,b的长度为5。在这种情况下,您总是选择第一个分支,这将错误地处理b。在</p>
<pre><code>def front_back(a, b):
if len(a)%2 == 0:
firstpart , secondpart = a[:len(a)/2] , a[len(a)/2:]
else:
firstpart , secondpart = a[:len(a)+1/2] , a[len(a)+1/2:]
if len(b)%2 == 0:
thirdpart , fourthpart = b[:len(b)+1/2] , b[len(b)+1/2:]
else
thirdpart , fourthpart = b[:len(b)/2] , b[len(b)/2:]
return firstpart+thirdpart+secondpart+fourthpart
</code></pre>