Код Junior Функции и области видимости обновлено

Композиция функций

Условие

Напишите compose(*fns): возвращает функцию одного аргумента, которая применяет функции справа налево: compose(f, g)(x) == f(g(x)). Без функций это тождественная функция. Проверка: run(names, x) собирает функции по именам из словаря OPS и применяет композицию к x. Реализуйте compose.

Примеры

run(["inc", "double"], 3) // 7
run(["double", "inc"], 3) // 8
run([], 5) // 5

Как подойти

Подсказки: 2
  1. Последняя функция в списке применяется первой.
  2. functools.reduce с начальным значением.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.