Встречается на собеседованиях • сегодня

Какие знаешь элементы функционального программирования в Python

В Python есть несколько элементов функционального программирования:

  1. Функции высшего порядка – функции, принимающие или возвращающие другие функции. Например, map, filter, sorted с ключом.

    python
    numbers = [1, 2, 3]
    squared = list(map(lambda x: x ** 2, numbers))  # [1, 4, 9]
  2. Лямбда-функции – анонимные функции через lambda.

    python
    add = lambda x, y: x + y
  1. Замыкания – функции, запоминающие значения из внешнего контекста.

    python
    def make_adder(n):
        def adder(x):
            return x + n
        return adder
  2. Генераторы и yield – ленивые вычисления.

    python
    def count_up_to(n):
        i = 1
        while i <= n:
            yield i
            i += 1
  3. Декораторы – функции, модифицирующие поведение других функций.

    python
    def log(func):
        def wrapper(*args):
            print(f"Calling {func.__name__}")
            return func(*args)
        return wrapper
  4. Рекурсия – вызов функции самой себя (но в Python нет TCO).

  5. Иммутабельность – неизменяемые типы (tuple, frozenset).

  6. Функции functoolsreduce, partial, lru_cache.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы