Курс 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. Методы __repr__ и __str__ в Python
  2. Именование переменных в Python
  3. Получение комбинаций в Python
  4. JMESPath в Python
  5. Генераторы в Python
  6. Обновление ключей в Python
  7. Функции в Python: создание и вызов
  8. Работа с файлами в Python
  9. Форматирование строк в Python
  10. Работа с WindowsPath()
  11. Получение пути к текущему скрипту с помощью os
  12. Проверка наличия элемента в списке
  13. Метод setdefault() в Python
  14. Форматирование строк с f-строками
  15. Генераторы в Python
  16. Форматирование кода на Python
  17. Избегайте изменяемых аргументов
  18. Магические методы в Python
  19. Проблемы с dict в Python
  20. Структурирование данных с Pydantic
  21. Конвертация коллекций в Python
  22. Создание даты из строки ISO
  23. Генератор надежных паролей
  24. Делегирование в Python
  25. Замеры производительности в Python
  26. Операции с массивами в NumPy
  27. Анонимные функции Lambda
  28. Обработка исключений с блоком else
  29. Изменение переменной в Python: nonlocal
  30. enumerate() в Python для работы с индексами
  31. Метод invert для побитового отрицания
  32. Метод bool() в Python
  33. Python: Фильтрация списков с помощью filter()
  34. Изменение регистра данных
  35. discard() — удаление элемента из множества
  36. Удаление элемента по индексу
  37. Имена объектов в Python
  38. Разделение функций на этапы
  39. Хранение переменных в Python.
  40. Особенности множеств в Python
  41. Реверс строки в Python
  42. Создание новых функций с помощью functools.partial

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