Лямбда (анонімні функції) в Python

 11547

В Python лямбда-функція (або “анонімна функція”) — це спеціальний тип функції без імені. Наприклад:

Тут ми створили лямбда-функцію, яка виводить текст Hello, World!.

Оголошення лямбда-функції в Python

Ключове слово lambda (замість def) використовується для створення лямбда-функції. Синтаксис оголошення лямбда-функції:

Тут:

   аргумент(и) — будь-яке значення, яке передається лямбда-функції;

   вираз — цей стейтмент виконується та повертається.

Розглянемо приклад:

Тут ми визначили лямбда-функцію, яку присвоїли змінній з іменем greet.

Щоб виконати цю лямбда-функцію нам потрібно її викликати. Ось як ми можемо викликати лямбда-функцію:

Дана лямбда-функція просто виводить текст Hello, World!.

Примітка: Ця лямбда-функція не має аргументів.

Розглянемо приклад виклику лямбда-функції в Python:

Результат:

Hello, World!

Тут ми визначили лямбда-функцію та присвоїли її змінній greet. Коли ми викликаємо лямбда-функцію, виконується функція print() всередині лямбда-функції.

Лямбда-функція з аргументами в Python

Як і звичайні функції, лямбда-функція також може приймати аргументи. Наприклад:

Результат:

Hey there, Delilah

Тут ми присвоїли лямбда-функцію змінній greet_user. name після ключового слова lambda вказує на те, що лямбда-функція приймає аргумент з іменем name.

Зверніть увагу на виклик лямбда-функції:

Тут ми передали рядкове значення Delilah нашій лямбда-функції, яке відповідає аргументу name.

Як використовувати лямбда-функцію з filter()?

Функція filter() в Python приймає функцію та ітерований об’єкт (списки, кортежі та рядки) як аргументи. Функція викликається зі всіма елементами в списку, і повертається новий список, що містить елементи, для яких функція визначила значення True. Наприклад:

Результат:

[4, 6, 8, 12]

Тут функція filter() повертає лише парні числа зі списку.

Як використовувати лямбда-функцію з map()?

Функція map() в Python приймає функцію та об’єкт, що ітерується (списки, кортежі та рядки) як аргументи. Функція викликається зі всіма елементами у списку і повертається новий список, який містить елементи, що повертаються цією функцією для кожного елемента.

Наприклад:

Результат:

[2, 10, 8, 12, 16, 22, 6, 24]

Тут функція map() подвоює значення елементів списку.

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (26 оцінок, середня: 4,58 з 5)
Завантаження...

Залишити відповідь

Ваш E-mail не буде опублікований. Обов'язкові поля відмічені *