Я пытаюсь написать код, который использует только лямбда-выражения, фильтровать, отображать и сокращать (это загадка), который принимает кортеж целых чисел и кортеж функций и возвращает новый кортеж целых чисел, которые только возвращают one true из списка функций:
Например, если кортеж равен (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
, а кортеж функций равен (lambda x: x > 3, lambda x: x % 2 == 0)
, я должен получить новый кортеж, который выглядит как [2, 5, 7, 9]
потому что они делают только одно из двух правил, чтобы вернуть True.пока это мой код, и я понятия не имею, как это сделать ...
func = (lambda x: x > 3, lambda x: x % 2 == 0)
data = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
a = lambda func, data: tuple(filter(lambda x: tuple(filter(None, map(lambda f: f(x), func))), data))
print(a(func, data))
Этот код возвращает только целые числа, которые применяются к обоим терминам, но мне нужно сделать это просто один .