我知道這個錯誤已經被問了好幾次,但我堅持我的代碼爲什麼它的回頭率類型錯誤爲什麼我的代碼產生類型錯誤:「NoneType」對象不是可迭代
def merge(s1, s2):
if len(s1) == 0:
return s2[:]
if len(s2) == 0:
return s1[:]
minElm = []
if s1[0] <= s2[0]:
minElm.append(s1.pop(0))
else:
minElm.append(s2.pop(0))
return minElm.extend(merge(s1[:], s2[:]))
list1 = [1,3,5,7,9]
list2 = [2,4,6,8]
merged = merge(list1[:], list2[:])
print(merged)
基本上,我想要使用遞歸方法將兩個已排序列表(ASC)合併成單排序列表(ASC)。我肯定我的邏輯是正確的,我只是不明白爲什麼我會得到TypeError: 'NoneType' object is not iterable
爲什麼我會得到TypeError
?
在一般情況下,當你有不明白的問題,它有助於打印出中間值,或通過調試運行或[交互式可視化工具](http://pythontutor.com/visualize.html),因此您可以找到並非您所期望的第一個值,而不是三個步驟,最終導致錯誤。 – abarnert
感謝您的提示。 – Chilpol