Лямбда-функции в Python — filter()

Основы Big Data с PySpark

Upendra Devisetty

Science Analyst, CyVerse

Что такое анонимные функции в Python?

  • Лямбда-функции — анонимные функции в Python

  • Широко используются вместе с map() и filter()

  • Создают функции для последующего вызова, как и def

  • Возвращают функцию без имени (т. е. анонимную)

  • Позволяют определить функцию встроенно или отложить выполнение кода

Основы Big Data с PySpark

Синтаксис лямбда-функций

  • Общая форма лямбда-функции
lambda arguments: expression
  • Пример лямбда-функции
double = lambda x: x * 2
print(double(3))
6
Основы Big Data с PySpark

Отличия def от лямбда-функций

  • Вычисление куба числа на Python
def cube(x): 
     return x ** 3
g = lambda x: x ** 3
print(g(10)) 
print(cube(10))
1000
1000
  • У лямбда-функции нет оператора return

  • Лямбда-функцию можно использовать в любом месте кода

Основы Big Data с PySpark

Лямбда-функции в Python — map()

  • map() применяет функцию ко всем элементам входного списка

  • Общий синтаксис map()

map(function, list)
  • Пример использования map()
items = [1, 2, 3, 4]
list(map(lambda x: x + 2 , items))
[3, 4, 5, 6]
Основы Big Data с PySpark

Лямбда-функции в Python — filter()

  • filter() принимает функцию и список, возвращая новый список элементов, для которых функция возвращает True

  • Общий синтаксис filter()

filter(function, list)
  • Пример использования filter()
items = [1, 2, 3, 4]
list(filter(lambda x: (x%2 != 0), items))
[1, 3]
Основы Big Data с PySpark

Давайте потренируемся!

Основы Big Data с PySpark

Preparing Video For Download...