<p>使用当前脚本:</p>
<pre><code>sensor_1 = [1,2,3,4,5]
sensor_2 = [6,7,8,9,20,22,23]
def Updater(one, two, divide):
updated = []
index = 0
while index < len(one):
if index <= divide:
updated.append(one[index])
elif index > divide:
updated.append(two[index])
else:
print('You did something stupid, you ignorant fool!')
index += 1
return updated
print(Updater(sensor_1, sensor_2, 2))
</code></pre>
<p>我们得到以下输出:</p>
<pre><code>[1]
</code></pre>
<p>这是因为<code>return</code>语句在while循环中,一旦循环执行一次,它将返回sensor\u 1中的第一个元素并立即退出循环。但是,将<code>return</code>语句向后推一个缩进级别:</p>
<pre><code>sensor_1 = [1,2,3,4,5]
sensor_2 = [6,7,8,9,20,22,23]
def Updater(one, two, divide):
updated = []
index = 0
while index < len(one):
if index <= divide:
updated.append(one[index])
elif index > divide:
updated.append(two[index])
else:
print('You did something stupid, you ignorant fool!')
index += 1
return updated
print(Updater(sensor_1, sensor_2, 2))
</code></pre>
<p>输出:</p>
<pre><code>[1, 2, 3, 9, 20]
</code></pre>