<p>下面是完整的代码,可以帮助您了解哪里出了问题。我把返回函数留给你去解密。你很容易弄明白。如果你觉得困难,请告诉我</p>
<p>搜索字符串时,索引很重要。此外,您还需要检查在未找到第一个字符串但找到第二个字符串时的条件。记住,如果找不到字符串,find方法将返回-1。在检查下一个字符串之前,需要先检查该字符串</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thanks'
subString2 = 'is'
def findMiddle(mainString, subString1, subString2):
x = mainString.find(subString1)
if x < 0:
print (subString1, 'does not exist in', mainString)
return
ln = len(subString1)
y = mainString.find(subString2,x+ln)
if y < 0:
print (subString2, 'does not exist in', mainString, 'after', subString1)
elif y == x+ln:
#find result will always be pos of string
#irrespective of where you start from.
#So you need to check if pos is after previous find
print ('No strings exist in', mainString, 'between', subString1, 'and', subString2)
else:
print ('The middle string between',subString1,'and',subString2, ':',mainString[x+ln:y])
findMiddle(mainString, subString1, subString2)
</code></pre>
<p>程序的输出如下所示:</p>
<p>例1:</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thanks'
subString2 = 'is'
</code></pre>
<p>输出:</p>
<pre><code>The middle string between Thanks and is : giving to everyone th
</code></pre>
<p>例2:</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thaxks'
subString2 = 'is'
</code></pre>
<p>输出:</p>
<pre><code>Thaxks does not exist in Happy Thanksgiving to everyone this morning
</code></pre>
<p>例3:</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thanks'
subString2 = 'ix'
</code></pre>
<p>输出:</p>
<pre><code>ix does not exist in Happy Thanksgiving to everyone this morning after Thanks
</code></pre>
<p>例4:</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thanks'
subString2 = 'Happy'
</code></pre>
<p>输出:</p>
<pre><code>Happy does not exist in Happy Thanksgiving to everyone this morning after Thanks
</code></pre>
<p>例5:</p>
<pre><code>mainString = 'Happy Thanksgiving to everyone this morning'
subString1 = 'Thanks'
subString2 = 'giv'
</code></pre>
<p>输出:</p>
<pre><code>No strings exist in Happy Thanksgiving to everyone this morning between Thanks and giv
</code></pre>