Синтаксис
Часть раздела Logic & Flow путешествия по Python на Coddy — урок 50 из 78.
Генератор списков (list comprehension) предлагает более короткий синтаксис, когда вы хотите создать новый список на основе значений существующего списка. Базовый синтаксис генератора списков следующий:
new_list = [expression for item in iterable]Вот разбор синтаксиса:
new_list: новый список, который будет создан.expression: значение, которое будет включено вnew_list. Это может быть измененная версияitem.
for item in iterable: Цикл, который перебирает каждый элемент вiterable(например, список, кортеж или диапазон).item: Текущий элемент, обрабатываемый в цикле.
Вот простой пример:
numbers = [1, 2, 3, 4, 5]
squares = [n * n for n in numbers]
print(squares)
# Вывод: [1, 4, 9, 16, 25]В этом примере списковое включение (list comprehension) создает новый список под названием squares, беря каждый элемент n из списка numbers и возводя его в квадрат.
Задание
ЛегкоСоздайте функцию с именем double_numbers, которая принимает список чисел numbers в качестве аргумента. Функция должна использовать списковое включение (list comprehension) для создания нового списка, в котором каждое число из исходного списка удвоено. Функция должна возвращать новый список.
Шпаргалка
Генератор списков (list comprehension) предлагает более короткий синтаксис для создания нового списка на основе значений существующего списка:
new_list = [expression for item in iterable]Где:
expression: Значение, которое будет включено в новый списокitem: Текущий обрабатываемый элементiterable: Исходный список, кортеж или диапазон
Пример:
numbers = [1, 2, 3, 4, 5]
squares = [n * n for n in numbers]
print(squares)
# Output: [1, 4, 9, 16, 25]Попробуйте сами
def double_numbers(numbers):
# Напишите здесь кодВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Logic & Flow
1Изучение переменных
КонстантыМножественное присваиваниеОбмен значениями переменныхПеременные-заполнителиОкругление чиселПриведение к списку4Приложение «Книга контактов»
Показать менюДобавить контакт7Множества. Часть 2
Математические операции. Часть 1Математические операции. Часть 2Повторение — Охота за сокровищамиПодмножества и надмножестваИтерация по множествамПовторение — Трекер турнира10Базовые генераторы списков
СинтаксисСоздание простых списковДобавление условийИспользование агрегации данныхПовторение — Дом списковПовторение — Элементы свободы13Система управления запасами
Обзор проектаДобавление товара2Словари. Часть 1
Что такое словарь?Создание словаряДоступ к значениямИзменение словарейИтоги — Менеджер рецептов5Продвинутое принятие решений
Тернарный операторПроверка вхожденияПроверка идентичностиОшибки отступовПовторение — Фильтр отпусков8Менеджер записей студентов
Обзор проектаДобавить студента11Продвинутые функции
Возврат нескольких значенийLambda-функции. Часть 1Lambda-функции. Часть 2Задача на повторение — Lambda-сортировкаРекурсивные функции. Часть 1Рекурсивные функции. Часть 2Повторение — сумма вложенного списка14Функции высшего порядка
Функция mapФункция filterПовторение — Валидатор emailПовторение — Обработчик чисел3Словари. Часть 2
Методы словарейВложенные словариПроверка наличия ключейПеребор словарей в циклеПовторение: счетчик частоты6Множества. Часть 1
Что такое множество?Основные операцииМетоды множествПовторение — удаление дубликатов9Продвинутая агрегация данных
Использование SumПоиск минимума и максимумаЭффективная сортировка данныхПовторение — Dictionary Sorter