Sobes.tech
Junior — Senior
49

Возврат первого подходящего элемента через лямбда‑предикат

Условие задачи

Определите, какое значение вернёт функция get_first_matching_object, когда в качестве предиката используется лямбда‑выражение lambda x: x == 1, а в качестве последовательности – список [2, 3, 4]. Нужно проверить, соответствует ли полученный результат ожидаемому поведению и нет ли в реализации логических ошибок.

def get_first_matching_object(predicate, objects=[]):
    matching_objects = (obj for obj in objects if predicate(obj))
    if matching_objects:
        found_obj = matching_objects[0]
        return found_obj
    return None

get_first_matching_object(lambda x: x == 1, [2, 3, 4])