Курс 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. Замена символов в Python
  3. Метод split() для разделения строк
  4. Равенство и идентичность в Python
  5. Создание namedtuple из словаря
  6. Преобразование текста в нижний регистр
  7. Преобразование типов данных в set comprehension
  8. Защита данных в Python
  9. Обмен данными с asyncio.Queue
  10. Скрытие вывода данных
  11. Библиотека Emoji: использование смайлов в Python
  12. Управление контекстом выполнения кода
  13. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  14. Декораторы в Python
  15. Поиск файлов по шаблону
  16. Форматирование строк в Python
  17. Сортировка с помощью key
  18. Сортировка HTML по CSS-селектору
  19. Работа с CSV файлами в Python
  20. Определение объема памяти объекта
  21. Выборка чисел
  22. Выбор редактора кода.
  23. Метод rxor для операции побитового исключающего «или»
  24. Генераторы в Python
  25. Метод rlshift для битового сдвига
  26. Метод bool() в Python
  27. Итерация по коллекции в Python
  28. Оператор break в Python
  29. Профилирование с Pandas
  30. Функция __init__ в Python
  31. Модуль os: работа с файлами и папками
  32. Распаковка с оператором *
  33. Подсказки типов в Python
  34. Python Метод sleep() времени
  35. Поиск самого длинного слова в списке с использованием max()
  36. Метод count() для списка
  37. Обработка исключений в Python
  38. Цикл for в Python
  39. Установка библиотек в Python
  40. Оператор морж в Python 3.8
  41. Форматирование кода на Python
  42. Сравнение объектов в Python
  43. Перевод текста с Python Translator
  44. Метод __iand__ для пользовательских классов
  45. Объединение словарей в Python
  46. Склеивание строк без циклов
  47. Обход элементов в Python
  48. Создание и обучение модели с Keras

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