@kurrbanov
Пишу бэкенд на Питоне

Почему данная функция возвращает None?

Имеется класс, который описывает связной список:

class ListNode:
    def __init__(self, val=0, nxt=None):
        self.val = val
        self.nxt = nxt


Я написал функцию, которая должна выводить длину этого связного списка:

def check_len(lst: ListNode, ans=0):
    if lst.nxt is None:
        return ans + 1
    check_len(lst.nxt, ans + 1)


print(check_len(linked_list))


Однако, она возвращает None. Если не возвращать значение, а выводить его в консоль, то переменная ans выводится.
Подскажите, пожалуйста, почему я не могу вернуть из функции значения по умолчанию?
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
Нужно функцию возвращать

def check_len(lst: ListNode, ans=0):
    if lst.nxt is None:
        return ans + 1
    return check_len(lst.nxt, ans + 1)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы