Учебник по Python

ДОМАШНЯЯ СТРАНИЦА ПИТОН Введение в Python Python для начала Синтаксис Python Комментарии Python Переменные Python Типы данных Python Числа Python Кастинг Python Строки Python Логические значения Python Операторы Python Списки Python Кортежи Python Наборы Python Словари Python Python, если...иначе Циклы Python в то время как Python для циклов Функции Python Python лямбда Массивы Python Классы/объекты Python Наследование Питона Итераторы Python Объем Python Модули Python Даты Python Математика Python Python JSON регулярное выражение Python Картинка в картинке Python Python Попробуйте... Кроме Пользовательский ввод Python Форматирование строк Python

Работа с файлами

Обработка файлов Python Файлы чтения Python Python Запись/создание файлов Удалить файлы Python

Модули Python

Учебник по NumPy Прохождение панды Учебник по Сципи

Python Matplotlib

Введение в Matplotlib Matplotlib Начать Пилот Matplotlib Графики Matplotlib Маркеры Matplotlib Линия Matplotlib Метки Matplotlib Сетка Matplotlib Подсюжеты Matplotlib Матплотлиб Скаттер Бары Matplotlib Гистограммы Matplotlib Круговые диаграммы Matplotlib

Машинное обучение

Начиная Средняя медиана режима Среднеквадратичное отклонение Процентиль Распределение данных Нормальное распределение данных Точечная диаграмма Линейная регрессия Полиномиальная регрессия Множественная регрессия Масштаб Поезд/тест Древо решений

Python MySQL

Начать работу с MySQL MySQL Создать базу данных MySQL Создать таблицу Вставка MySQL Выбор MySQL MySQL Где Порядок MySQL MySQL Удалить Таблица удаления MySQL Обновление MySQL Лимит MySQL MySQL присоединиться

Python MongoDB

Начать работу с MongoDB MongoDB Создать базу данных MongoDB Создать коллекцию Вставка MongoDB MongoDB Найти Запрос MongoDB Сортировка MongoDB MongoDB Удалить Коллекция MongoDB Drop Обновление MongoDB Лимит MongoDB

Справочник по Python

Обзор Python Встроенные функции Python Строковые методы Python Методы списка Python Словарные методы Python Методы кортежей Python Методы набора Python Файловые методы Python Ключевые слова Python Исключения Python Глоссарий Python

Справочник по модулям

Случайный модуль Модуль запросов Модуль статистики Математический модуль cМатематический модуль

Python Как

Удалить дубликаты списка Перевернуть строку Добавить два числа

Примеры Python

Примеры Python Компилятор Python Упражнения на Python Питон Викторина Сертификат Python

Python — понимание списка


Понимание списка

Понимание списков предлагает более короткий синтаксис, когда вы хотите создать новый список на основе значений существующего списка.

Пример:

На основе списка фруктов вам нужен новый список, содержащий только фрукты с буквой «а» в названии.

Без понимания списка вам придется написать forоператор с условным тестом внутри:

Пример

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]
newlist = []

for x in fruits:
  if "a" in x:
    newlist.append(x)

print(newlist)

С пониманием списка вы можете сделать все это с помощью всего одной строки кода:

Пример

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if "a" in x]

print(newlist)


Синтаксис

newlist = [expression for item in iterable if condition == True]

Возвращаемое значение — новый список, оставив старый список без изменений.


Состояние

Условие похоже на фильтр , который принимает только те элементы, значение которых равно True.

Пример

Принимайте только те предметы, которые не являются «яблоками»:

newlist = [x for x in fruits if x != "apple"]

Условие if x != "apple"  будет возвращаться Trueдля всех элементов, кроме «яблока», в результате чего новый список будет содержать все фрукты, кроме «яблока».

Условие является необязательным и может быть опущено:

Пример

При отсутствии ifзаявления:

newlist = [x for x in fruits]

Итерируемый

Итерируемый объект может быть любым итерируемым объектом, например, списком, кортежем, набором и т. д.

Пример

Вы можете использовать range()функцию для создания итерации:

newlist = [x for x in range(10)]

Тот же пример, но с условием:

Пример

Принимать только числа меньше 5:

newlist = [x for x in range(10) if x < 5]

Выражение

Выражение является текущим элементом в итерации, но также и результатом, которым вы можете манипулировать до того, как он станет элементом списка в новом списке :

Пример

Установите значения в новом списке в верхний регистр:

newlist = [x.upper() for x in fruits]

Вы можете установить результат на то, что вам нравится:

Пример

Установите для всех значений в новом списке значение «привет»:

newlist = ['hello' for x in fruits]

Выражение также может содержать условия, но не как фильтр, а как способ управления результатом:

Пример

Вернуть «апельсин» вместо «банан»:

newlist = [x if x != "banana" else "orange" for x in fruits]

Выражение в приведенном выше примере говорит:

«Верните товар, если это не банан, если это банан, верните апельсин».