Задать вопрос
  • Что нужно сделать, чтобы рекурсия работала для каждого элемента массива?

    @Rild2 Автор вопроса
    Извиняюсь за возможное недопонимание - мне нужно было найти не people в конкретном списке, а именно что понять, как через рекурсию обходить все значения в массиве. К счастью, я уже разобрался, это делается через временную переменную:
    def rec(el, l, d):
        if el in l:
            return True
        else:
            for i in l:
                if i in d.keys():
                    t = rec(el, d[i], d)  # Вот через эту
                    if t != None:  # Если в рекурсии для одного списка не нашло значение
                         return t  # то я просто его отбрасываю и ищу дальше
                       
    
            
    diction = {'city': ['zoo', 'park', 'cafe'], 'zoo': ['tiger', 'zebra'],
                        'park': ['squirrel', 'dog'], 'cafe': 'people'}
    
    print('Yes' if rec('people', diction['city'], diction) else 'No')  # Yes
    Ответ написан
    Комментировать