Курс Python → Генераторы списков
Генераторы списков (List Comprehension) — это удобный способ создания нового списка, применяя определенную функцию к каждому элементу исходного списка. Они позволяют написать более компактный и читаемый код, чем использование циклов for. Генераторы списков также позволяют улучшить производительность программы, так как они выполняются быстрее, чем обычные циклы.
Для использования генераторов списков необходимо записать выражение, которое определяет новый список, в квадратных скобках. Это выражение состоит из функции или выражения, которое будет применено к каждому элементу исходного списка, за которым следует цикл for или условие, определяющее какие элементы будут включены в новый список.
numbers = [1, 2, 3, 4, 5]
squared_numbers = [x**2 for x in numbers]
print(squared_numbers) # Output: [1, 4, 9, 16, 25]
В данном примере мы создаем новый список squared_numbers, в котором каждый элемент возводится в квадрат. Мы используем генератор списка [x**2 for x in numbers], который перебирает каждый элемент numbers и применяет функцию возведения в квадрат к нему. Результатом будет новый список squared_numbers с квадратами исходных чисел.
Генераторы списков также могут содержать условия, которые фильтруют элементы исходного списка. Например, можно создать новый список, содержащий только четные числа:
numbers = [1, 2, 3, 4, 5]
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers) # Output: [2, 4]
В этом примере мы используем условие if x % 2 == 0, чтобы выбрать только четные числа из списка numbers и добавить их в новый список even_numbers. Таким образом, генераторы списков позволяют создавать новые списки на основе старых с помощью более компактного и эффективного кода.
Другие уроки курса "Python"
- Импортирование в Python
- Работа с Enum в Python3.
- Протокол управления контекстом
- Логические значения в Python
- Python itertools combinations() — группировка элементов
- Подсказки при вводе данных в Python
- Переворот списка в Python
- Метод classmethod
- Имена объектов в Python
- Экранирование символов в Python
- Функция all() в Python
- Работа с многоуровневыми словарями в Python
- Слияние словарей в Python 3.9
- Работа с CSV файлами
- Мониторинг работы программы Py-spy
- Декораторы классов
- Лямбда-функции в Python
- Управление фоновыми задачами в Python
- Структуры данных в Python
- Генерация строк с .join()
- Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
- Делегирование в Python
- Метод join() для объединения строк
- Курс Data Scientist в медицине
- Распаковка элементов массива
- Операция += для списков
- Комментарии в Python
- Сортировка в Python
- Поиск простых чисел
- Цикл while в Python
- Оценка выражений генератора в Python
- Профилирование данных с Pandas
- Безопасный доступ к значениям словаря
- Разработка Telegram-ботов
- Символ подчеркивания в Python
- Обработка данных в Python
- Конвертация текстовых чисел с помощью Numerizer
- Объединение списков в Python
- Переменная Шредингера
- inspect в Python: анализ кода
- Хранение данных
- Python: динамическая типизация и проверка типов
- Извлечение чисел из текста
- Профилирование данных с Pandas.
- Представление бесконечности в Python
- Работа с массивами в Numpy















