Понимание списков в Python (с примерами)

Опубликовано: 2021-08-22

Python входит в число самых популярных языков программирования в мире. В 2020 году он занял второе место в рейтинге популярности языков программирования RedMonk . Причиной его широкой популярности является понятный код и простота. Писать код на Python довольно просто, если вы знакомы с синтаксисом. Одной из его уникальных особенностей является функция понимания списка. Вы можете выполнить понимание Python для списков, написав всего одну строку кода!

Следующие пункты иллюстрируют, что такое понимание списка и как вы можете использовать его в различных условиях. Мы также рассмотрим различия, присутствующие между пониманием списка и циклами for, которые могут быть весьма запутанными. Вы также узнаете о других связанных функциях и о том, как их использовать:

Оглавление

Что такое понимание списка Python?

Python предлагает несколько способов создания списков. Одним из наиболее эффективных способов среди них является функция понимания списка. Это позволяет создавать списки, написав одну строку кода.

Вы можете использовать генераторы списков для создания новых списков из других итерируемых элементов, таких как массивы, строки, кортежи, списки и т. д. Он состоит из квадратных скобок с выражением. Система выполняет выражение для каждого элемента с циклом for для повторения каждого элемента.

Синтаксис для понимания списка в Python следующий:

your_new_list = [выражение для элемента в your_old_list, если условие]

Здесь your_new_list — это новый список (или результат). Выражение зависит от переменной, которую вы использовали для каждого элемента в your_old_list. Наконец, условие «если» — это фильтр.

Есть много причин, по которым разработчики Python предпочитают списочное понимание циклам. Основная причина – эффективность. Вы можете создать список с гораздо меньшими усилиями и кодом при использовании понимания списка, чем при использовании циклов.

Поскольку это занимает меньше строк кода, чем циклы, понимание списка также экономит вам много времени. Это упрощает код и делает его более удобным для пользователя. Более того, понимание списка превращает итеративный оператор в формулу. Если вы хотите получить больше знаний о Python, ознакомьтесь с нашими программами по науке о данных в ведущих университетах.

Список примеров понимания Python

Мы делимся несколькими примерами того, как вы можете использовать понимание списков в Python. Лучше всего изучить их и воспроизвести в своей программе после того, как вы поймете, как они работают. Это поможет вам правильно понять, насколько эффективно понимание списка инструментов:

Пример 1:

В этом примере мы создадим простой список, используя понимание Python:

Вход :

a = [i для i в диапазоне (5)]

распечатать

Выход :

[0, 1, 2, 3, 4]

Пример 2:

В приведенном ниже примере мы создадим список, кратный двум:

Вход :

new_list = [a*2 для a в диапазоне (10)]

Выход

[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

Пример 3

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

Вход

старый_список = [1, 2, 3]

new_list = [элемент * 2 для элемента в старом_списке]

распечатать новый_список

Выход

[2, 4, 6]

Пример 4

Понимание списков не ограничивается только целыми числами, вы также можете использовать его со строками. В этом примере мы будем использовать понимание списка, чтобы создать список первых букв каждого слова в нашем исходном списке.

Вход :

my_list = ["обновление", "есть", "весело"]

результат = [слово[0] для слова в my_list]

распечатать результат

Выход

['у', 'и', 'ф']

Пример 5

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

Вход :

old_list = «upGrad 123 — это весело»

new_list = [x вместо x в строке, если x.isdigit()]

распечатать новый_список

Выход :

['1', '2', '3']

Пример 6:

Вы также можете использовать понимание списка с функциями, которые являются жизненно важной частью математических реализаций Python:

Вход

# сначала мы создадим функцию с именем тройной

защита тройной (x

вернуть х * 3

# теперь у вас есть работающая функция, которая выводит результат, если вы введете допустимое значение

>>> напечатать трижды(2)

Выход :

6

Теперь вы можете использовать понимание списков с этой функцией, чтобы создавать больше списков.

Вход :

>>> [тройной (x) для x в диапазоне (5)]

печатать тройной

Выход :

[0, 3, 6, 9, 12]

Разница между пониманием списка и циклом for

Обычный способ перебора списка — использование цикла for. Тем не менее, понимание списка — более эффективный метод итерации по списку, поскольку он позволяет выполнять задачу с меньшим количеством строк кода.

Вот пример, иллюстрирующий разницу. Мы начнем с пустого списка и изменим его, чтобы он стал списком четных чисел:

Вход

# создание пустого списка

старый_список = []

# использование цикла for для создания нового списка

для x в диапазоне (5):

old_list.append(x*2)

распечатать старый_список

Выход :

[0, 2, 4, 6, 8]

Как видите, цикл for требует от вас использования функции добавления для создания нового списка. Вам также пришлось сначала создать пустой список, чтобы вы могли использовать цикл для его изменения. Однако с пониманием списка вам не придется использовать другую функцию, поскольку вы можете выполнить задачу с помощью одной строки кода:

Вход :

# создание набора с использованием понимания списка

old_list = [x*2 для x в диапазоне (5)]

распечатать старый_список

Выход :

[0, 2, 4, 6, 8]

Поскольку понимание списка занимает меньше места и кода, оно также требует меньше вычислительной мощности, чем использование цикла for. Это полезно при работе с большими программами, поскольку эффективность становится ключевым вопросом, когда код достаточно длинный.

Однако, когда вы используете понимание списков, вам следует избегать использования слишком длинных в одной строке. В противном случае код не останется удобным для пользователя, и может быть довольно сложно поделиться своей работой с другими разработчиками. Имейте в виду, что вы переписываете каждое понимание списка в цикл for, но вы не можете переписывать каждый цикл for в представление списка.

Понимание списков — одна из многих функций понимания Python, присутствующих в этом языке программирования. Еще одна очень популярная функция понимания — это понимание словаря:

Что такое понимание словаря в Python?

Понимание словарей, как следует из названия, позволяет создавать словари в Python. Синтаксис понимания словаря:

{k:v для (k,v) в итерации}

Здесь k обозначает ключ, а v обозначает значение.

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

Вход :

# использование Python для демонстрации понимания словаря

# создание двух списков для представления ключей и значений

клавиши = [1, 2, 3, 4, 5]

значения = ['a', 'b', 'c' 'd', 'e']

# реализация понимания словаря

new_dict = {k:v для (k,v) в zip(ключи, значения)}

распечатать new_dict

Выход :

{1: «а», 2: «б», 3: «в», 4: «г». 5 : 'е'}

Понимание словарей позволяет довольно легко создавать словари в Python. Однако вы также можете использовать понимание списка для создания словаря. В следующем примере мы будем использовать понимание списка и создадим словарь:

Вход :

new_dict = {x: x*2 вместо x в [5, 4, 3, 2, 1]}

распечатать new_dict

Выход :

{5 : 10, 4 : 8, 3 : 6, 2 : 4, 1 : 2}

Станьте экспертом по Python

Понимание списков — одна из многих функций, присутствующих в Python. Это очень универсальный и полезный язык программирования. Более того, синтаксис Python также очень прост для понимания и требует совсем немного усилий, чтобы привыкнуть к нему. Помимо этих преимуществ, Python также предлагает своим пользователям множество библиотек.

Он имеет процветающее сообщество разработчиков и программистов, которые регулярно добавляют новые библиотеки в свою коллекцию. Многочисленные библиотеки и функции, доступные для Python, делают его полезным в различных секторах, таких как разработка программного обеспечения, наука о данных, машинное обучение и другие.

Если вы заинтересованы в изучении Python, вам следует изучать его в контексте области, в которую вы хотите войти. Кроме того, рекрутеры всегда ищут сертифицированных специалистов в этой области, потому что это гарантирует им компетентность кандидата.

По этим причинам было бы лучше присоединиться к курсу Python, если вы заинтересованы в карьере с этим навыком. Международный институт информационных технологий Бангалора предлагает программу Executive PG по разработке программного обеспечения с upGrad, которая идеально подходит для тех, кто хочет стать экспертом в этом языке программирования и продолжить карьеру в области технологий. Курс предоставит вам хорошо структурированный способ изучения Python и других популярных технологий, который поможет вам войти в отрасль в качестве готового к работе профессионала.

У upGrad более 40 000 платных учеников в более чем 85 странах. Присоединение к этой программе также позволит вам установить международную сеть через обширную базу учеников upGrad. Курс Executive PG по разработке программного обеспечения представляет собой онлайн-программу, которая длится 13 месяцев. Для этого требуется всего 15 часов в неделю.

Программа предлагает шесть специализаций на выбор

  • Кибербезопасность
  • DevOps
  • Облачные вычисления
  • Большое количество данных
  • Разработка блокчейна
  • Полная разработка

Наряду с этими преимуществами, upGrad также предлагает всестороннюю помощь в карьере с помощью этой программы, чтобы вы могли легко начать свою карьеру. Подробнее о курсе можно узнать здесь: Executive PG Program in Software Development .

Заключение

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

Что вы думаете о понимании списка? Как бы вы использовали это в своей программе?

Что делает понимание списка в Python?

Понимание списков Python позволяет эффективно создавать списки, используя только одну строку кода. Это одна из самых надежных функций в Python.

Что такое понимание словаря?

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

Является ли понимание списка лучше, чем для цикла?

Да, в большинстве случаев понимание списков — гораздо лучший способ создания списков. Для генерации списков требуется меньше кода, времени и вычислительной мощности, чем для циклов.