Рубрики
Без рубрики

Лямбда исчисление в Python

Python 101: Сегодняшняя тема – это лямбда функции в Python.

Автор оригинала: Chris.

В этом руководстве представлена функция усовершенствованного языка: лямбда функции Отказ Функции лямбда укоренились в математической зоне Лямбда исчисления Отказ Один из пионеров этой области был церковь Алонзо. Он ввел функции лямбда в 1936 году еще до появления первых компьютеров.

Функции лямбда существуют в широком ассортименте языков для функционального программирования. Они не только в сердце функциональных языков программирования, они также являются основой многих продвинутых функций языка Python.

Например, современный язык Scala для параллельного программирования сочетает в себе традиционные языковые элементы (например, от Java) с функциональными элементами (например, функции лямбда).

Примеры лямбда исчисления

Прежде чем определить лямбда-функции для вас, давайте учимся настоящим! Вот некоторые интересные:

>>> f = lambda x, y: x + y
>>> f(1, 2)
3
>>> f(2, 3)
5

Вы определяете функцию лямбда, которая принимает два входных аргумента х и y и возвращает сумму х + y Отказ

Например, вы можете использовать его для передачи функции в функцию:

>>> customers = ['Alice', 'Bob', 'Carl']
>>> ids = map(lambda name: name[:1], customers)
>>> list(ids)
['A', 'B', 'C']

Список Клиенты состоит из трех строк. Вы определяете карта () Функция, которая применяет первый аргумент функции (функции – это объекты!) Для каждого элемента в списке. Прошло лямбда Функция Возвращает первый символ строки с использованием базового Операция нарезки Отказ

LAMBDA CALLUS Turging Complete

Функция лямбда – Turing Complete Это означает, что вы можете выполнить все вычисления, компьютер может выполнять только с помощью функций Lambda! Вы можете найти больше о Формальная теория лямбда исчисления здесь.

Так как работают ламбда функции?

А Функция лямбда – это анонимная функция без идентификатора. После лямбда ключевое слово . Функция занимает один или несколько произвольные аргументы Отказ Аргументы являются запятыми, разделенные и законченные толстой кишкой. После того, как толстая кишка следует за одним выражением. Тем не менее, это выражение может состоять из сложных расчетов с использованием указанных переменных аргумента.

Функция лямбда затем возвращает результат этого выражения.

Следовательно, лямбда функции – синтаксические ярлыки для подкласса обычных функций Python Отказ

def make_incrementor(n):
    return lambda x: x + n

f = make_incrementor(42)
print(f(0))
print(f(1))

В фрагменте кода функция make_incrementer Создает функцию лямбда во время выполнения. Созданная функция лямбда увеличивает элемент х по фиксированной цене N Отказ Например, функция инкрементации в головоломках увеличивает значение на 42. Мы назначаем эту функцию переменной F Отказ Тогда мы Печать Результаты при увеличении значения 0 и 1 на инкремент 42.

Вы можете решить эту головоломку в нашей интерактивной головоломке App Finxter.com:

Нажмите на ссылку и Проверьте свои навыки сейчас!

Похожие видео: лямбда Функции

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

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.