Курс 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. Объединение словарей в Python
  2. List Comprehension Tutorial
  3. Порядок и длина множеств в Python
  4. Принципы Zen of Python
  5. Big O оптимизация
  6. Возврат нескольких значений
  7. Преобразование PowerPoint в PDF.
  8. Участие в сообществе @selectel
  9. Эффективная конкатенация строк с использованием join()
  10. Встроенные функции Python
  11. Округление дробей в Python
  12. JSON-esque в Python
  13. Работа с deque в Python
  14. Работа с изменяемыми списками
  15. Функция zip() для объединения списков
  16. Оператор space-invader
  17. Перевод текста с Python Translator
  18. Конкатенация строк с помощью join()
  19. Запуск Python из интерпретатора
  20. Зарезервированные слова в Python
  21. Определение объема памяти объекта
  22. Анонимные функции в Python
  23. Гибкие функции Python
  24. Библиотека funcy: удобные утилиты
  25. Тернарный оператор в Python
  26. Склеивание строк без циклов
  27. Установка виртуального окружения Python
  28. Декораторы в Python
  29. Тестирование с responses
  30. Функции-генераторы в Python
  31. Инициализация переменных
  32. Работа с IP-адресами в Python
  33. Цикл for в Python
  34. Удаление ключей из словаря
  35. Работа с часовыми поясами в Python.
  36. Циклы в Python
  37. Управление контекстом выполнения кода
  38. Измерение времени выполнения кода с использованием time
  39. Хранение переменных в словаре.
  40. Установка максимального количества цифр
  41. Создание итерируемых объектов
  42. Pretty-printing JSON в Python
  43. Работа с deque из collections
  44. Переворот строки с помощью срезов
  45. Форматирование строк в Python
  46. Конкатенация списков в Python
  47. Codecademy в Telegram

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