Курс 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. Поиск подстроки в строке
  2. Поиск анаграмм с Counter
  3. Создание Radio кнопок в tkinter
  4. Лямбда-функции для min/max
  5. Освобождение памяти в Python
  6. Решатель судоку на Python с pygame
  7. Многопоточность и асинхронное программирование в Python
  8. Итерация по итерируемым объектам
  9. Переменные класса и экземпляра
  10. Карта бомбоубежищ в Москве и Питере
  11. Переопределение метода len
  12. Библиотека funcy: удобные утилиты
  13. Аргумент по умолчанию
  14. Открытие и редактирование скриптов Python
  15. Принципы программирования
  16. Сортировка HTML-элементов
  17. Генерация UUID в Python
  18. Проверка условий в Python
  19. Lambda Functions in Python
  20. Сохранение и загрузка модели в PyTorch
  21. Конструктор в Python
  22. Ускорение кода с помощью векторизации
  23. Работа с дробями в Python
  24. Конвертация коллекций в Python.
  25. Цикл for в Python
  26. Создание и обучение модели с Keras
  27. Декоратор Ajax required
  28. Работа с набором данных CIFAR10 в PyTorch
  29. Работа с эмодзи в Python
  30. Мощь вложенных функций в Python
  31. Проверка однородности элементов списка
  32. Проверка элементов списка условием
  33. F-строки в Python
  34. Создание списков в Python
  35. Очистка вывода в Python
  36. Подсчет элементов с помощью Counter из collections
  37. Функция enumerate в Python
  38. Работа с GitHub в Telegram
  39. Очистка входных данных
  40. Логирование в Python
  41. Поиск самого длинного слова в списке с использованием max()
  42. Имена объектов в Python
  43. Установка и использование библиотеки google
  44. %pinfo: получение информации об объекте

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