擅长:python、mysql、java
<p>根据您的问题,您希望合并A的第一部分(<code>str1</code>)和B的第二部分(<code>str2</code>),但是在您的代码中,您要做的是相反的,只需切换<code>str1</code>和<code>str2</code>上的切片:</p>
<pre><code>firstStr = str1[:i] # from the start up to i (first part of str1)
secondStr = str2[i:] # from i to up the end (second part of str2)
</code></pre>
<p>测试:</p>
<pre><code>def palindrome(str1, str2):
if len(str1) != len(str2):
return None
for i in range(len(str1)):
firstStr = str1[:i]
secondStr = str2[i:]
if isPalindrome(firstStr+secondStr):
return i
return -1
def isPalindrome(s):
return s == s[::-1]
print(palindrome('abcdefgh', 'dasedcba'))
</code></pre>
<p>输出:</p>
<pre><code>4
</code></pre>