Вступ до списку розумінь Python
Зрозуміння забезпечують короткий і простий спосіб побудови нових послідовностей, використовуючи вже визначені послідовності в Python. Ці послідовності можуть бути списками, наборами, словниками тощо. Зрозуміння списків є однією з цінних особливостей Python. Коротше кажучи, «Поняття списків» пропонує спосіб створювати нові списки на основі наявних списків. Іншими словами, «Поняття списку» - це один простий спосіб створити список на основі якогось ітерабельного. Тут ітерабельним є все, що можна використати для перегляду циклу. Зрозуміння списку дає можливість використовувати альтернативний синтаксис для створення списків та будь-яких інших послідовних типів даних у python. Ми розглянемо, як вони корисні згодом. Існує 3 компоненти розуміння списку, це:
- Вираз виводу: Цей варіант не є обов'язковим і може бути проігнорований.
- Ітерабельний.
- Змінна, яка представляє членів ітерабельного, її часто називають змінною ітератора.
Синтаксис та приклади:
У python ми можемо створити список розумінь, використовуючи наступний синтаксис:
list_variable = (x for x in iterable)
Як ви можете бачити в списку Зрозуміння, список присвоюється змінній. Розглянемо приклад, спочатку ми можемо розглянути метод пошуку квадрата числа за допомогою циклу:
Код:
numbers = (2, 5, 3, 7) square = () for n in numbers:
square.append(n**2)
print(square)
Вихід:
Тепер давайте розглянемо те ж саме, але використовуючи Список Зрозуміння замість циклу:
Код:
numbers = (2, 5, 3, 7) square = (n**2 for n in numbers) print(square)
Вихід:
Тут ви можете бачити, що квадратні дужки "()" використовуються для позначення того, що вихідним виразом всередині них є список.
Перелічіть розуміння та функції лямбда
Слід пам’ятати, що розуміння списків - не єдиний спосіб створення списків, Python має багато вбудованих функцій та функцію лямбда, яка може бути використана, наприклад:
Код:
letters = list(map(lambda x: x, 'human'))
print(letters)
Вихід:
Хоча це працює у багатьох випадках, розуміння списків краще читати і легше їх зрозуміти тому, хто не є програмістом коду.
Додавання умов у розуміння списку
Ви можете користуватися будь-якими умовними умовами, необхідними всередині списку, щоб змінити існуючий список. Давайте розглянемо приклад, який використовує умовні умови:
Код:
numbers_list = ( x for x in range(20) if x % 2 == 0) print(numbers_list)
Вихід:
Ось ще один приклад:
Код:
numbers_list = (x for x in range(100) if x % 2 == 0 if x % 5 == 0) print(numbers_list)
Вихід:
Використання вкладених циклів у розумінні списку
Якщо потрібно, ми можемо використовувати вкладені петлі у розумінні списку, давайте подивимось, як ми можемо використовувати вкладені петлі таким чином, знайшовши перенесення матриці:
Код:
transposedmatrix = () matrix = ((1, 2, 3, 4), (4, 5, 6, 8)) for i in range(len(matrix (0))):
transposedmatrix_row = () for row in matrix:
transposedmatrix_row.append(row(i))
transposedmatrix.append(transposedmatrix_row)
print(transposedmatrix)
Вихід:
Приклади розуміння списку Python
Нижче наведено приклади спільного розуміння Python:
Приклад №1 - Видалення голосних звуків із заданої речення
Код:
def eg_for(sentence):
vowels = 'aeiou'
filter_list = () for l in sentence:
if l not in vowels:
filter_list.append(l)
return ''.join(filter_list)
def eg_lc(sentence):
vowels = 'aeiou'
return ''.join(( X for X in sentence if X not in vowels))
Now, let's define the matrix, run the program and then check-out the results:
sentence = "hello from the other side"
print ("loop result: " + eg_for(sentence))
print ("LC result: " + eg_lc(sentence))
Вихід:
Приклад №2 - Картографування назв країн із їхніми столицями
Код:
country = ( 'India', 'Italy', 'Japan' ) capital = ( 'Delhi', 'Rome', 'Tokyo' ) output_dict = ()
# Using loop for constructing dictionary
for (key, value) in zip(country, capital):
output_dict(key) = value
print("Output Dictionary using for loop:", output_dict)
Вихід:
Переваги розуміння списку Python
Можна подумати, якщо петлі можна використовувати майже для всього розуміння списку, навіщо їх використовувати в першу чергу? Що ж, відповідь полягає в швидкості та часу, необхідному для виконання завдання та кількості необхідної пам’яті. Коли розуміння списку робиться, ми вже скорочуємо 3 рядки коду в один, і коли це зроблено, код набагато швидше, як коли стикається зі розумінням списку, python виділяє пам'ять для списку спочатку, а потім додає елементи всередині нього. Крім того, це, без сумніву, більш елегантний і складний спосіб створення списків, заснованих на попередньо існуючих списках.
Висновок
Тепер, коли ми мали певний досвід розуміння списків, легко зрозуміти, як вони дозволяють нам перетворити один список у новий. Вони мають простий синтаксис, який обмежує обсяг роботи, необхідний для створення списку. Зважаючи на синтаксис та структуру розуміння списків в основному, як позначення програми для створення наборів, вони швидко стають другим характером для програмістів і гарантують, що коли код буде передано іншій особі для підтримки та розширення, це буде легко зрозуміти і працювати з.
Рекомендована стаття
Це посібник зі списку розумінь Python. Тут ми обговорюємо розуміння списку та функції лямбда разом із впровадженням та виведенням коду. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -
- Деструктор в Python з Перевагами
- Робіть цикл у Python за допомогою блок-схеми
- Струнковий масив в Python з методами
- Що таке шари лямбда AWS?
- Типи даних PL / SQL
- String Array в JavaScript
- Різні типи даних SQL з прикладами
- Повне керівництво по масиву рядків