Курс 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. Логирование с Logzero: ротация файла
  4. Генератор надежных паролей
  5. Python: отличительная особенность — отступы
  6. Работа со слайсами
  7. Генераторы в Python
  8. Умножение строк и списков
  9. Искажение имен в Python
  10. Открытие и запись файлов
  11. Подсчет элементов в Python
  12. Обновление ключей в Python
  13. Функция product() из itertools
  14. Создание словарей и множеств в Python
  15. Декоратор Property в Python
  16. capitalize() — изменение регистра первого символа строки
  17. Оператор assert в Python
  18. Лямбда-функции для min/max
  19. Combobox в Tkinter
  20. Метод __float__ в Python
  21. Оператор распаковки в Python
  22. Поиск уникальных элементов строкой в Python
  23. Подсказки типов в Python
  24. Стать Python-разработчиком
  25. Метод add для класса Vector
  26. Округление в Python
  27. Проекты на Python
  28. Просмотр атрибутов и методов класса
  29. Работа со случайными элементами
  30. Progress с библиотекой tqdm
  31. Работа с индексами списков
  32. Именование столбцов в Python с pandas
  33. Изменение логики работы с временем
  34. Определение основы слова с showballstemmer
  35. Извлечение статей с newspaper3k
  36. Очистка данных в Python
  37. Список переменных с %who
  38. Скачать видео с YouTube
  39. Python: изменяемые и неизменяемые коллекции
  40. Копирование списков в Python
  41. Упрощение работы с JSON-данными в Python
  42. Метод count() для списков
  43. Python Тесты и Гайды
  44. Разделение строки с помощью re.split()
  45. Работа с аргументами командной строки в Python
  46. Методы работы со списками

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