Функция map
Часть раздела Logic & Flow путешествия по Python на Coddy. Урок 72 из 78.
Функция map() принимает две основные вещи:
- Функцию (которая содержит инструкции о том, что нужно делать)
- Последовательность элементов (например, list или любую коллекцию элементов)
Затем она применяет that function к каждому элементу вашей последовательности, один за другим, и возвращает вам все результаты.
Например:
def square(n):
return n * n
numbers = [1, 2, 3, 4, 5] # Это просто список чисел
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Вывод: [1, 4, 9, 16, 25]Что здесь произошло:
- У нас есть список чисел: [1, 2, 3, 4, 5]
map()function берёт каждое число по очереди- Она передаёт каждое число через нашу function
square - Она собирает все результаты по порядку
Можно представить это как сборочную линию:
- Поступает число 1 → функция square превращает его в 1
- Поступает число 2 → функция square превращает его в 4
- Поступает число 3 → функция square превращает его в 9 И так далее...
Вы также можете использовать лямбда-функцию вместо определения отдельной функции:
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Вывод: [1, 4, 9, 16, 25]Функция map() работает с любой коллекцией элементов — не только с числами. Это могут быть строки или любые другие типы данных, которые вы хотите обрабатывать одинаковым образом.
Задание
ЛегкоСоздай функцию с именем convert_to_uppercase, которая принимает список строк strings в качестве аргумента. Функция должна использовать функцию map() вместе с лямбда-функцией, чтобы преобразовать каждую строку в списке в верхний регистр. Функция должна вернуть список, содержащий строки в верхнем регистре.
Попробуйте сами
def convert_to_uppercase(strings):
# Используйте map() с lambda-функцией для преобразования строк в верхний регистр
# Замените пустой список ниже на это выражение
uppercase_strings = []
# Верните список строк в верхнем регистре
return list(uppercase_strings)В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Logic & Flow
1Изучение переменных
КонстантыМножественное присваиваниеОбмен значениями переменныхПеременные-заполнителиОкругление чиселПриведение к списку4Приложение «Книга контактов»
Показать менюДобавить контакт7Множества. Часть 2
Математические операции. Часть 1Математические операции. Часть 2Повторение — Охота за сокровищамиПодмножества и надмножестваИтерация по множествамПовторение — Трекер турнира10Базовые генераторы списков
СинтаксисСоздание простых списковДобавление условийИспользование агрегации данныхПовторение — Дом списковПовторение — Элементы свободы13Система управления запасами
Обзор проектаДобавление товара2Словари. Часть 1
Что такое словарь?Создание словаряДоступ к значениямИзменение словарейИтоги — Менеджер рецептов5Продвинутое принятие решений
Тернарный операторПроверка вхожденияПроверка идентичностиОшибки отступовПовторение — Фильтр отпусков8Менеджер записей студентов
Обзор проектаДобавить студента11Продвинутые функции
Возврат нескольких значенийLambda-функции. Часть 1Lambda-функции. Часть 2Задача на повторение — Lambda-сортировкаРекурсивные функции. Часть 1Рекурсивные функции. Часть 2Повторение — сумма вложенного списка14Функции высшего порядка
Функция mapФункция filterПовторение — Валидатор emailПовторение — Обработчик чисел3Словари. Часть 2
Методы словарейВложенные словариПроверка наличия ключейПеребор словарей в циклеПовторение: счетчик частоты6Множества. Часть 1
Что такое множество?Основные операцииМетоды множествПовторение — удаление дубликатов9Продвинутая агрегация данных
Использование SumПоиск минимума и максимумаЭффективная сортировка данныхПовторение — Dictionary SorterПотренируйтесь самостоятельно: Онлайн-компилятор Python