我有這個非常簡單的遞歸函數:邏輯基本情況
def subL(L):
x=len(L)
if x==0:
return L
else:
print(L[:x])
subL(L[:x-1])
這是例如輸入我用:
x = [23,2,5,77,8,9]
print(subL(x))
這是輸出:
[23, 2, 5, 77, 8, 9]
[23, 2, 5, 77, 8]
[23, 2, 5, 77]
[23, 2, 5]
[23, 2]
[23]
None
該功能的基本情況如何工作if x==0: return L
?這是我在輸出中得到None
的原因嗎? 它可以修改爲簡單的產品:以下?
[23, 2, 5, 77, 8, 9]
[23, 2, 5, 77, 8]
[23, 2, 5, 77]
[23, 2, 5]
[23, 2]
[23]
的'None'不被功能印刷;它由解釋器打印,因爲函數不返回任何內容。 –