Курс 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. Работа с массивами в Python
  3. Проверка кортежей.
  4. Работа с модулем bisect
  5. Работа с индексами списков
  6. Асинхронное выполнение задач в Python
  7. Нахождение отличий в списках
  8. Хешируемые ключи в Python
  9. Разделение строки с помощью re.split()
  10. Работа с CSV файлами в Python
  11. Создание вложенного генератора
  12. Оптимизация интернирования строк
  13. Работа с срезами в Numpy
  14. Именование переменных в Python
  15. Обработка элементов в Python
  16. Метод pos в Python
  17. Аннотации типов в Python
  18. Извлечение аудио из видео
  19. Работа с исключениями в Python
  20. Работа с collections в Python.
  21. Форматирование строк в Python
  22. Чтение бинарного файла в Python.
  23. Наиболее частотные элементы с помощью Counter
  24. Аннотации типов в Python
  25. Метод pop() списка
  26. Defaultdict в Python
  27. Автоматизация с Python
  28. Метод classmethod
  29. Оператор объединения словарей
  30. Создание и инициализация объектов
  31. Проверка индексов коллекции
  32. Оптимизация памяти в Python
  33. Блок else в обработке исключений
  34. Быстрый поиск кода
  35. Python и Монти Пайтон
  36. Подробная информация о %pinfo
  37. Объединение словарей в Python
  38. Метод clear для коллекций
  39. Экспорт данных в файл.
  40. Поиск наиболее частого элемента
  41. Блок else в Python
  42. Работа с timedelta
  43. Функции all() и any() в Python
  44. Список и кортеж в Python
  45. Замена атрибута в именованном кортеже
  46. Получение размера объекта с sys.getsizeof()
  47. Форматирование строк в Python.
  48. Комментарии в Python

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