Курс 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"

  1. Функция zip() в Python
  2. Подсчет количества элементов в списке
  3. Упрощенный вывод данных в Python
  4. Слияние словарей в Python 3.9
  5. Сортировка HTML по CSS-селектору
  6. Списки в Python: основы
  7. Вывод сложных структур данных с помощью pprint
  8. Передача параметров в Python
  9. Переопределение метода sub
  10. IPython и Jupyter Notebook: руководство
  11. Взаимодействие с sys
  12. Работа с библиотекой xkcd
  13. Обновление и получение данных в SQLite
  14. Работа с timedelta
  15. Форматирование строк в Python
  16. Defaultdict в Python
  17. Изменяемые и неизменяемые объекты
  18. Обработка аргументов Python
  19. Аргументы *args и **kwargs
  20. Удаление элемента по индексу
  21. Списковые включения в Python
  22. Переопределение метода delitem в Python
  23. Работа с прокси в Python
  24. Транспонирование матрицы
  25. Цикл while в Python
  26. Именованные срезы в Python
  27. Работа с Telegram API на Python
  28. Управление асинхронными задачами на Python.
  29. Получение имени функции с помощью inspect
  30. Измерение времени выполнения в Python
  31. Сортировка данных с лямбда-функциями
  32. Основные операции с Numpy
  33. Закрытие файла в Python
  34. Получение текущей даты и времени с помощью datetime
  35. Создание и обучение модели с Keras
  36. Создание уникального множества
  37. Логические значения в Python
  38. Оптимизация памяти с __slots__
  39. Преобразование символов с помощью map
  40. Удаление файлов в Python
  41. Работа с срезами в Python
  42. Фильтрация последовательности
  43. Проверка однородности элементов списка
  44. Декораторы для регистрации функций
  45. Enum в Python

Marketello читают маркетологи из крутых компаний