0
Новое на python - оцените помощь в работе функции dot и понимаете, что я делаю неправильно.Код рекурсии Неудача
def dot(l,k): """multiply each elements in list l with each element from list k and return the total
"""
total = 0
if l == [] or '':
return
else:
last_l = l[-1]
last_2 = k[-1]
total += last_2 * last_l
return total + dot(l[:-1], k[:-1])
l = [1, 2]
k = [3, 4]
print(dot(l,k))
Вам нужно возвратить '0' в, если заявление. – Psidom
Как прокомментировал Psidom, вам нужно вернуть 0, если это так, что последний элемент может быть добавлен или у вас будет что-то вроде 2 + 3 + None, которое недействительно – Aquiles
Еще одна вещь: «или» не собирается имеют какой-либо эффект, поскольку он всегда ложный. Я думаю, вы имеете в виду «или l ==» «». На самом деле я просто опустил этот пункт, требуя, чтобы вызывающий абонент перешел в список. –