Это всего лишь демонстрационный код для понимания поведения выхода в рекурсивной функции.Я ожидаю, что он вернет итеративный список [5,4,3], но он останавливается на первой итерации и возвращает только [5]
Может кто-нибудь объяснить, почему это происходит?
def yield_test(input):
if input > 3:
yield_test(input-1)
yield input
print(list(yield_test(5)))
выход: [5] Ожидаемый выход: [5, 4, 3]