Что такое методы списка в Python? Методы списка — это функции, которые можно использовать в списке. Для вызова метода мы вызываем список(объект), ставим точку перед объектом, а после точки идет метод — object.method(). В этой статье мы рассмотрим все методы списка в Python, которые вам нужно знать. Затем мы углубимся в понимание списков в Python.

Что такое список в Python?

Список — это структура данных, элементы которой заключены в квадратные скобки []. Список может содержать различные типы элементов (целые числа, числа с плавающей запятой, строки, другие списки, логические значения и т. д.). Элементы в списке всегда разделяются запятыми. Списки упорядочены (это означает, что каждый элемент в списке имеет присвоенный ему индекс или местоположение). Списки изменяемы (вы можете добавлять, удалять и перемещать элементы из списка). Списки могут содержать повторяющиеся значения. Ниже приведены примеры различных типов списков, которые мы можем создать в Python.

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

Список методов

Давайте теперь посмотрим на методы списка в Python. Помните, что метод списка — это функция, которую мы можем выполнять со списком.

1. Всплывающий метод

По умолчанию метод pop удаляет последний элемент или значение в заданном списке. Допустим, у нас есть список имен — [«Джон», «Оскар», «Фейт»] и мы хотим удалить имя «Фейт» из списка. Мы можем использовать метод pop, чтобы удалить имя. Вот пример ниже:

Однако с помощью метода pop мы также можем указать, какой элемент мы хотим удалить из заданного списка, минуя индекс элемента в качестве аргумента. Допустим, мы хотим удалить имя Оскар из нашего списка, мы будем использовать индекс 1 в качестве аргумента метода pop. См. ниже:

LIFO и списки

Метод pop позволяет использовать список в качестве стека, то есть последний элемент, добавленный в список, является первым элементом, подлежащим удалению — Last in First out (LIFO). Давайте воспользуемся примером для иллюстрации. Вы можете видеть из приведенного ниже примера, что Эрик был последним, добавленным в список имен, но когда мы используем метод pop, Эрик удаляется первым.

FIFO и списки

Мы также можем использовать список в качестве очереди — первый элемент, который будет добавлен, будет первым элементом, который будет удален (First-in First-out (FIFO)). Для этого нам нужно импортировать deque из collections. В приведенном ниже примере мы добавляем два имени в наш список, но когда мы используем метод popleft из коллекций, извлекается имя с нулевым индексом (John).

2. Добавить метод

Метод append добавляет только один элемент за раз в конец списка. Если вы хотите добавить более одного элемента, вы можете использовать метод расширения (который мы рассмотрим позже). Append принимает только один аргумент. Вот пример метода добавления в действии. Мы используем append, чтобы добавить имя «Роза» в конец списка.

3. Удалить метод

Другой метод списка, который мы собираемся рассмотреть, — это метод удаления. Метод remove удаляет элемент, который мы передаем в качестве аргумента. Метод удаления не принимает индекс элемента, который мы хотим удалить, он принимает фактическое имя элемента. Если элемент не существует, он вернет исключение. Если список содержит более одного элемента с одинаковым именем, метод удаления удалит только элемент с наименьшим индексом. Вот пример ниже:

4. Метод сортировки

Метод sort сортирует список в порядке возрастания (по умолчанию). Его также можно использовать для сортировки списка в порядке убывания, установив для аргумента reverse значение True (см. пример ниже). Его можно использовать для сортировки чисел и слов. Однако для работы метода сортировки список должен содержать только числа или только строки. Вы не можете отсортировать список, в котором есть и числа, и слова. В приведенных ниже примерах мы сортируем список имен в порядке возрастания и список чисел в порядке убывания.

5. Метод подсчета

Метод count подсчитывает, сколько раз данный элемент появляется в списке. В приведенном ниже примере мы проверяем, сколько раз имя Эрик встречается в списке. Мы видим, что имя Эрик появляется в списке только один раз, потому что наш вывод равен 1.

6. Индексный метод

Метод index возвращает позицию или индекс данного элемента. Это возможно, потому что список упорядочен. Мы собираемся использовать метод index для поиска позиции имени «Оскар» в нашем списке. Если имя Оскар встречается более одного раза, метод index вернет только самый низкий индекс. В приведенном ниже примере имя Оскар появляется в списке дважды, но метод index возвращает только самый низкий индекс, индекс 1.

В методе index мы также можем передать позицию, с которой мы хотим, чтобы наш поиск данного элемента начинался, и позицию, с которой мы хотим, чтобы он заканчивался (это необязательно). В приведенном ниже примере мы сообщаем методу index, где начать (индекс 2) поиск и где закончить (индекс 5) поиск имени «Оскар». Поскольку мы говорим ему пропустить индекс один (1), он вернет только следующий самый низкий индекс имени Оскар в списке, то есть индекс 4.

7. Вставить метод

Метод вставки добавляет указанный элемент в список. Метод вставки принимает два аргумента: позицию или индекс элемента и имя элемента, который вы хотите добавить в список. В приведенном ниже примере мы говорим методу вставки добавить имя «Питер» с индексом 0 в список имен.

8. Расширить метод

Если вы хотите добавить итерацию в список, вы используете метод расширения. В отличие от метода append, который добавляет только один элемент в конец списка, метод extend может добавлять любое количество элементов, находящихся в итерируемом объекте. Метод extend всегда добавляет элементы в конец списка. Каждый элемент, переданный в качестве аргумента в расширенном методе, будет рассматриваться как итерируемый. Если вы передаете строку в качестве аргумента, она будет перебирать строку. В приведенном ниже примере мы используем метод extend для добавления двух имен из итерируемого (другого списка).

9. Обратный метод

Обратный метод просто делает то, что он говорит, меняет порядок списка. Не требует аргументов. Список не сортируется; это только переворачивает его. Первый становится последним, а последний становится первым. Проверьте пример ниже:

10. Очистить метод

Метод clear удаляет все элементы из списка. Это оставляет вас с пустым списком. Не требует аргументов. Вот пример ниже:

11. Метод копирования

Метод копирования создает копию списка. В приведенном ниже примере мы используем метод копирования для создания копии исходного списка. Метод копирования не принимает аргументов.

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

Понимание списков — это способ создания списка из итерируемого объекта путем написания одной строки кода вместо множества строк кода с использованием циклов for. Речь идет о том, чтобы код был кратким и читабельным. Это питонический. Мы рассмотрим несколько примеров, в которых мы можем использовать понимание списка для улучшения читабельности нашего кода. В первом примере мы пытаемся создать новый список из диапазона значений. Мы хотим, чтобы наш код возвращал список чисел, которые не делятся на 2. Есть два способа сделать это. В первом примере используется цикл for, а во втором примере используется понимание списка. Во втором примере мы поместили все в одну строку кода, сделав синтаксис более компактным.

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

Также важно отметить, что в среднем обработка списков может выполняться быстрее, чем циклы for, что является еще одной причиной рассмотреть возможность их использования в коде.

Заключение

Это наиболее важные методы списка, с которыми вы столкнетесь при написании кода на Python. Если вы считаете эту статью полезной, пожалуйста, нажмите кнопку «Подписаться» и порекомендуйте ее кому-нибудь.

Присоединяйтесь к FAUN: Сайт💻|Подкаст🎙️|Twitter🐦|Facebook👥 |Instagram📷|Группа Facebook🗣️|Группа Linkedin💬| Slack 📱|Cloud Native Новости📰|Дополнительно.

Если этот пост был полезен, пожалуйста, несколько раз нажмите кнопку аплодисментов 👏 ниже, чтобы выразить свою поддержку автору 👇