Курс 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. Блок else в циклах.
  2. Оптимизация интернирования строк
  3. Генераторы в Python
  4. Цикл for в Python
  5. Тип данных TypeVarTuple
  6. Игра Виселица на Python
  7. Проверка запуска скрипта или импорта модуля
  8. Работа с итераторами в Python
  9. Замена символов в Python
  10. Глобальные переменные в Python
  11. Работа с zip-архивами в Python
  12. Импорт и использование модулей в Python
  13. Склеивание строк без циклов
  14. Метод ne для сравнения объектов
  15. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  16. Блок try…finally в Python
  17. Замыкания в Python
  18. Комплексные числа в Python
  19. Отрицательные индексы списков в Python
  20. Оператор * в Python
  21. Поиск индекса элемента
  22. Обработка ошибок в Python
  23. Запуск асинхронной корутины
  24. Изменяемые и неизменяемые объекты
  25. Кортеж в Python: создание, доступ, изменение
  26. Импорт модулей и пакетов в Python
  27. Выборка чисел
  28. Проверка списка: any() и all()
  29. Применение функции к списку
  30. Построение графиков в терминале с bashplotlib
  31. Применение функции к элементам списка
  32. Распаковка элементов массива
  33. Работа с комплексными числами
  34. Подписка на @SelectelNews
  35. Генерация фальшивых данных с Faker
  36. Цикл for в Python
  37. Работа с множествами в Python
  38. Генерация случайных чисел в Python
  39. Область видимости переменных
  40. Основы Python
  41. Работа с CSV файлами в Python
  42. Работа с коллекциями Python
  43. Копирование и вставка текста в Python
  44. Работа с аргументами командной строки в Python
  45. Декораторы в Python
  46. Подписка на каналы разработчиков
  47. Конкатенация строковых литералов
  48. Оптимизация строк в Python

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