Рубрики
Без рубрики

Что такое понятия Python?

Python имеет мощную функцию, называемую понятностью. С помощью этой функции понимания новая последовательность … помечена Python, начинающим.

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

Список понимания

Давайте попробуем понять понимание с примером. Допустим, у нас есть список чисел. Мы хотим создать новый список, который содержит двойное из каждого нечетного числа из исходного списка. Новый список с вышеуказанными требованиями могут быть созданы с использованием понимания списка:

nums = [11, 21, 30, 40, 55, 66, 17]
odd_nums = [n*2 for n in nums if n % 2 != 0]    # output is [22, 42, 110, 34]

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

Подразделения обычно имеют ниже части:

  • Последовательность ввода – Nums В приведенном выше примере, который является списком
  • Переменная, представляющая индивидуальные члены последовательности – n В приведенном выше примере
  • Дополнительный предикат – Если n% 2 Мы фильтруем нечетные номера из исходного списка
  • Выходное выражение – N * 2 Это двойное отфильтрованное нечетное число

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

Вот несколько дополнительных примеров понимания списка:

nums = [1, 2, 3, 4]
#Get a new list containing square of the numbers
sq_nums = [n*n for n in nums]      # [1, 4, 9, 16]
fruits = ["Apple", "Banana", "Orange"]
#convert list to lowercase
l_fruits = [name.lower() for name in names]  #['apple', 'banana', 'orange']

Установить понимание

Мы можем создавать установленные последовательности, используя заданные потенциалы. Допустим, у нас есть список, содержащий дубликаты чисел, и мы хотим создать набор без дубликатов. Кроме того, полученная последовательность должна быть двойной из исходных чисел. Это может быть достигнуто с использованием заданного понимания. Обратите внимание, что наборы не поддерживают порядок элементов, полученные члены последовательности могут быть организованы в любом случайном порядке.

dup_nums = [1, 2, 2, 3, 4, 5, 12, 10, 2]
sq_set = {num*2 for num in dup_nums} # {1, 4, 100, 9, 16, 144, 25}

Словарь понимание

Вот пример создания понимания словаря, содержащий номер в качестве ключа с квадратом номера в качестве его значения

 d = {n : n*n for n in range(1, 6)}     # {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

Понимание кортежа

Есть Нет Порядки кортежа в питоне. Генераторы Python могут быть использованы для создания кортежей аналогичным образом.

Оригинал: “https://dev.to/dev0928/what-are-python-comprehensions-26bn”