Веб-версияОткрыть в Telegram

Пост⚡ Как ускорить код на Python? Используем map, filter, reduce ⚡

14 сентября 2026
Б
Библиотека Python разработчика | Книги по питону
⚡ Как ускорить код на Python? Используем map, filter, reduce ⚡ Привет, друзья! Сегодня расскажу о том, как можно ускорить выполнение кода, заменяя обычные циклы на встроенные функции map(), filter() и reduce(). Эти инструменты позволяют писать более компактный, читаемый и быстрый код. ✅ map() Функция map() применяется к каждому элементу последовательности и возвращает новый итератор. ❌ Обычный способ: numbers = [1, 2, 3, 4, 5] squared = [] for num in numbers: squared.append(num ** 2) ✅ Быстрее с map(): numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x ** 2, numbers)) За счёт того, что map() использует C-оптимизированную логику, код выполняется быстрее. ✅ filter() Фильтрует элементы последовательности по заданному условию. ❌ Медленный вариант: numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] evens = [] for num in numbers: if num % 2 == 0: evens.append(num) ✅ Быстрее с filter(): numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] evens = list(filter(lambda x: x % 2 == 0, numbers)) Такой код читается легче и работает быстрее. ✅ reduce() Позволяет выполнять кумулятивные операции (например, суммирование, умножение). ❌ Классический способ: numbers = [1, 2, 3, 4, 5] product = 1 for num in numbers: product *= num ✅ Быстрее с reduce(): from functools import reduce numbers = [1, 2, 3, 4, 5] product = reduce(lambda x, y: x * y, numbers) Этот метод полезен, если нужно свести список к одному значению. 💡 Важно: reduce() чаще заменяют sum() или math.prod(), но для сложных операций он остаётся полезным. Такие функции помогают писать код, который не только быстрее работает, но и легче читается. 📲 Мы в MAX 👉@BookPython
9 · 930 ·

Рядом в ленте

ББиблиотека Python разработчика | Книги по питонуПрофилируем Python в продакшене: почему cProfile не подходит, и чем хорош py-spy Когда на проде начинает течь память или скачет CPU, первая мысль, подключить прББиблиотека Python разработчика | Книги по питонуЛовушка замыканий: Почему ваши лямбды в цикле сломаны (Late Binding) Вы пишете код, который генерирует список функций (например, колбэки для кнопок в UI или дин
это сообщение
ББиблиотека Python разработчика | Книги по питонуProtocol vs ABC: Утиная типизация на стероидах (Static Duck Typing) В классическом ООП (Java, C#) и при использовании abc.ABC в Python мы привыкли к Nominal SubББиблиотека Python разработчика | Книги по питонуЕсли у вас есть ресурсоемкая задача для процессора и вы хотите использовать все доступные ядра, то multiprocessing.Pool - это то, что вам нужно. Он создает неск
ББиблиотека Python разработчика | Книги по питонуБиблиотека Python разработчика | Книги по питону@BookPython · канал · Технологии
18 046подписчиков901средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем