Вы вызываете process
рекурсивно, но никогда не игнорируете его возвращаемое значение, когда вы это делаете. Добавьте оператор return
в передать возвращаемое значение ::
def process ( my_list ):
#do some stuff
if len(my_list) > 1:
return process(my_list)
else:
print(my_list)
return my_list
Теперь, когда len(my_list) > 1
является True
, вы фактически передаете возвращаемое значение рекурсивный вызов.