Вбудовані Функції
Ось ще два приклади, що демонструють використання lambda функцій з функціями filter()
та sorted()
у Python.
Крім того, ви можете передати більш складну користувацьку функцію замість лямбди до цих функцій високого порядку.
filter()
Функція filter()
використовується для створення ітератора в якому відфільтровані всі елементи, що задовільняють умову функції. Тобто, lambda або користувацька функція повинна повернути True на прийнятий елемент масиву. Ось приклад використання filter() з лямбда-функцією для відфільтрації непарних чисел зі списку:
12345678numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # Використання lambda функції для відфільтрування непарних чисел even_numbers = filter(lambda x: x % 2 == 0, numbers) # Конвертція об'єкту filter у список even_numbers_list = list(even_numbers) print(even_numbers_list)
У цьому прикладі лямбда-функція lambda x: x % 2 == 0
перевіряє чи є число парним. Функція filter()
застосовує цю лямбду до кожного елемента у списку чисел і повертає ітератор парних чисел.
sorted()
Функція sorted()
повертає новий відсортований список з елементів будь-якого масиву.
sorted(iterable, key=key, reverse=reverse)
iterable
- це послідовність для сортування (список, дикт, кортеж тощо);key
- це функція, яку потрібно виконати для визначення порядку;reverse
- булева функція. False - це порядок за зростанням, а True - за спаданням. За замовчуванням використовується значення False.
Ось приклад використання sorted()
з лямбда-функцією для сортування списку кортежів на основі другого елемента в кожному кортежі:
123456tuples = [(1, 'banana'), (2, 'apple'), (3, 'orange')] # Використовуємо lambda функцію для сортування за другим елементом кожного кортежу sorted_tuples = sorted(tuples, key=lambda x: x[1]) print(sorted_tuples)
У цьому прикладі лямбда-функція lambda x: x[1]
повертає другий елемент кожного кортежу. Потім функція sorted()
сортує кортежі списку на основі цих других елементів, в результаті чого список буде відсортовано по назвам фруктів за алфавітом.
Swipe to start coding
Розглянемо список словників, що представляють книги, і ви хочете відфільтрувати книги, які мають певну кількість сторінок.
- Визначить список книг.
Нехай
books
- це список словників. Кожен словник представляє книгу з двома ключами: 'title' та "pages ". - Створення користувацької функції
has_many_pages
, яка приймає аргументиbook
таmin_pages
. - Використання
filter()
з користувацькою функцією. - Перетворення об'єкта filter у список, збереження його у змінній
filtered_books_list
і друк за допомогою print.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 3.7Awesome!
Completion rate improved to 3.7
Вбудовані Функції
Ось ще два приклади, що демонструють використання lambda функцій з функціями filter()
та sorted()
у Python.
Крім того, ви можете передати більш складну користувацьку функцію замість лямбди до цих функцій високого порядку.
filter()
Функція filter()
використовується для створення ітератора в якому відфільтровані всі елементи, що задовільняють умову функції. Тобто, lambda або користувацька функція повинна повернути True на прийнятий елемент масиву. Ось приклад використання filter() з лямбда-функцією для відфільтрації непарних чисел зі списку:
12345678numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # Використання lambda функції для відфільтрування непарних чисел even_numbers = filter(lambda x: x % 2 == 0, numbers) # Конвертція об'єкту filter у список even_numbers_list = list(even_numbers) print(even_numbers_list)
У цьому прикладі лямбда-функція lambda x: x % 2 == 0
перевіряє чи є число парним. Функція filter()
застосовує цю лямбду до кожного елемента у списку чисел і повертає ітератор парних чисел.
sorted()
Функція sorted()
повертає новий відсортований список з елементів будь-якого масиву.
sorted(iterable, key=key, reverse=reverse)
iterable
- це послідовність для сортування (список, дикт, кортеж тощо);key
- це функція, яку потрібно виконати для визначення порядку;reverse
- булева функція. False - це порядок за зростанням, а True - за спаданням. За замовчуванням використовується значення False.
Ось приклад використання sorted()
з лямбда-функцією для сортування списку кортежів на основі другого елемента в кожному кортежі:
123456tuples = [(1, 'banana'), (2, 'apple'), (3, 'orange')] # Використовуємо lambda функцію для сортування за другим елементом кожного кортежу sorted_tuples = sorted(tuples, key=lambda x: x[1]) print(sorted_tuples)
У цьому прикладі лямбда-функція lambda x: x[1]
повертає другий елемент кожного кортежу. Потім функція sorted()
сортує кортежі списку на основі цих других елементів, в результаті чого список буде відсортовано по назвам фруктів за алфавітом.
Swipe to start coding
Розглянемо список словників, що представляють книги, і ви хочете відфільтрувати книги, які мають певну кількість сторінок.
- Визначить список книг.
Нехай
books
- це список словників. Кожен словник представляє книгу з двома ключами: 'title' та "pages ". - Створення користувацької функції
has_many_pages
, яка приймає аргументиbook
таmin_pages
. - Використання
filter()
з користувацькою функцією. - Перетворення об'єкта filter у список, збереження його у змінній
filtered_books_list
і друк за допомогою print.
Рішення
Дякуємо за ваш відгук!
single
Awesome!
Completion rate improved to 3.7
Вбудовані Функції
Свайпніть щоб показати меню
Ось ще два приклади, що демонструють використання lambda функцій з функціями filter()
та sorted()
у Python.
Крім того, ви можете передати більш складну користувацьку функцію замість лямбди до цих функцій високого порядку.
filter()
Функція filter()
використовується для створення ітератора в якому відфільтровані всі елементи, що задовільняють умову функції. Тобто, lambda або користувацька функція повинна повернути True на прийнятий елемент масиву. Ось приклад використання filter() з лямбда-функцією для відфільтрації непарних чисел зі списку:
12345678numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # Використання lambda функції для відфільтрування непарних чисел even_numbers = filter(lambda x: x % 2 == 0, numbers) # Конвертція об'єкту filter у список even_numbers_list = list(even_numbers) print(even_numbers_list)
У цьому прикладі лямбда-функція lambda x: x % 2 == 0
перевіряє чи є число парним. Функція filter()
застосовує цю лямбду до кожного елемента у списку чисел і повертає ітератор парних чисел.
sorted()
Функція sorted()
повертає новий відсортований список з елементів будь-якого масиву.
sorted(iterable, key=key, reverse=reverse)
iterable
- це послідовність для сортування (список, дикт, кортеж тощо);key
- це функція, яку потрібно виконати для визначення порядку;reverse
- булева функція. False - це порядок за зростанням, а True - за спаданням. За замовчуванням використовується значення False.
Ось приклад використання sorted()
з лямбда-функцією для сортування списку кортежів на основі другого елемента в кожному кортежі:
123456tuples = [(1, 'banana'), (2, 'apple'), (3, 'orange')] # Використовуємо lambda функцію для сортування за другим елементом кожного кортежу sorted_tuples = sorted(tuples, key=lambda x: x[1]) print(sorted_tuples)
У цьому прикладі лямбда-функція lambda x: x[1]
повертає другий елемент кожного кортежу. Потім функція sorted()
сортує кортежі списку на основі цих других елементів, в результаті чого список буде відсортовано по назвам фруктів за алфавітом.
Swipe to start coding
Розглянемо список словників, що представляють книги, і ви хочете відфільтрувати книги, які мають певну кількість сторінок.
- Визначить список книг.
Нехай
books
- це список словників. Кожен словник представляє книгу з двома ключами: 'title' та "pages ". - Створення користувацької функції
has_many_pages
, яка приймає аргументиbook
таmin_pages
. - Використання
filter()
з користувацькою функцією. - Перетворення об'єкта filter у список, збереження його у змінній
filtered_books_list
і друк за допомогою print.
Рішення
Дякуємо за ваш відгук!