擅长:python、mysql、java
<p>您正在为gensort()的每次调用创建一个列表。不要只获取一个参数,而是获取两个参数(原始列表和新列表)。然后使用空列表作为默认值,如下所示:</p>
<pre><code>def gensort(L, goodlist=[]):
""" sorts all numbers in the List from lowest to highest
L is a list
return value is the sorted list
"""
if len(L) == 0:
return goodlist
else:
goodlist.append(min(L))
L.remove(min(L))
return gensort(L, goodlist)
print(gensort([7, 9, 4, 3, 0, 5, 2, 6, 1, 8]) )
</code></pre>
<p>这样,您可以在每次递归调用时保留列表</p>