Задать вопрос
OccamaRazor
@OccamaRazor

Как указать рекурсионный вызов функции при обработке условий?

Ошибка: чрезмерное количество вызовов функции при input() = "A b c d e"
def cap(s):

    for i in s:
        if i != ' ':
            print(i)
        elif i == ' ':
            cap(i)

print(cap(input()))
  • Вопрос задан
  • 132 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 2
@deliro
Очевидно же. Когда i равно ' ', то уходит в бесконечную рекурсию.
Ответ написан
sim3x
@sim3x
def func(s):
    if len(s) == 0: return

    if s[0] != ' ':
        print(s[0])

    func(s[1:])

func("A b c d e")
Ответ написан
Ваш ответ на вопрос

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

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