Список – очень удобная структура данных, а разнообразие методов работы со списками в Python позволяет легко и элегантно решить любую практическую задачу по хранению и обработке последовательностей. Перечислим самые полезные методы.
Максимальный и минимальный элемент списка – max() и min():
>>> sp = [5, 6, 2, 90, 12, 0, 4, 1, 3] >>> print(max(sp), min(sp)) 90 0
Функции max() и min() могут принимать дополнительные параметры, например, длину key=len
:
>>> lst = ['яблоко', 'апельсин', 'дыня'] >>> print(max(lst, key=len)) апельсин >>> print(min(lst, key=len)) дыня
Сумма элементов списка – sum():
>>> sp = [5, 3, 2, 1, 9, 0, 7] >>> print(sum(sp)) 27
Сортировка по возрастанию и убыванию – sort() и sort с ключом reverse=True:
>>> lst = [7, 6, 0, 9, 5, 3, 2, 8, 1] >>> lst.sort() >>> print(lst) [0, 1, 2, 3, 5, 6, 7, 8, 9] >>> lst.sort(reverse=True) >>> print(lst) [9, 8, 7, 6, 5, 3, 2, 1, 0] >>> my_lst = ['яблоко', 'ананас', 'груша'] >>> my_lst.sort() >>> print(my_lst) ['ананас', 'груша', 'яблоко'] >>> my_lst.sort(reverse=True) >>> print(my_lst) ['яблоко', 'груша', 'ананас']
Перестановка элементов в обратном порядке – reverse():
>>> lst = ['м', 'о', 'н', 'и', 'т', 'о', 'р'] >>> lst.reverse() >>> print(lst) ['р', 'о', 'т', 'и', 'н', 'о', 'м']
Добавление элемента append() и расширение списка другим списком – extend():
>>> lst = ['a', 'b', 'c'] >>> lst.append('d') >>> print(lst) ['a', 'b', 'c', 'd'] >>> lst2 = ['k', 'l', 'm'] >>> lst.extend(lst2) >>> print(lst) ['a', 'b', 'c', 'd', 'k', 'l', 'm']
Подсчет количества всех элементов списка len() и подсчет определенных элементов count():
>>> lst = ['a', 'b', 'r', 'a', 'c', 'a', 'd', 'a', 'b', 'r', 'a'] >>> print(len(lst)) 11 >>> print(lst.count('a')) 5
Удаление элемента по индексу – del() и по значению – remove():
>>> lst = ['п', 'р', 'о', 'г', 'р', 'а', 'м', 'м', 'а'] >>> del lst[5] >>> del lst[-1] >>> print(lst) ['п', 'р', 'о', 'г', 'р', 'м', 'м'] >>> lst.remove('г') >>> print(lst) ['п', 'р', 'о', 'р', 'м', 'м'] >>> del lst[2:4] >>> print(lst) ['п', 'р', 'м', 'м']
Удаление и возврат последнего элемента – pop():
>>> lst = ['м', 'о', 'н', 'и', 'т', 'о', 'р'] >>> print(lst.pop()) р
Если указать индекс элемента, он будет удален вместо последнего:
>>> lst = ['н', 'о', 'у', 'т', 'б', 'у', 'к'] >>> lst.pop(3) 'т' >>> lst.pop(5) 'к' >>> print(lst) ['н', 'о', 'у', 'б', 'у']
Удаление всех элементов списка – clear():
>>> lst = ['к', 'у', 'р', 'с'] >>> lst.clear() >>> print(lst) []
Вставка элемента в определенную позицию – insert():
>>> lst = ['П', 'т', 'о', 'н'] >>> lst.insert(1, 'а') >>> lst.insert(2, 'й') >>> print(lst) ['П', 'а', 'й', 'т', 'о', 'н']
Индекс первого вхождения элемента index() в списке или в диапазоне:
>>> lst = ['н', 'о', 'у', 'т', 'б', 'у', 'к'] >>> print(lst.index('у')) 2 >>> print(lst.index('у', 3, 6)) 5
Создание поверхностной копии списка – copy():
>>> lst = [1, 2, 3, [5, 6]] >>> lst2 = lst.copy() >>> print(lst2) [1, 2, 3, [5, 6]]
Объединение элементов списка в строку – join():
Он относится одновременно и к методам списков, и методам строк:
>>> lst = ['|', '|', '|', '|', '|', '|'] >>> print('***'.join(lst)) |***|***|***|***|***| >>> print('_'.join(lst)) |_|_|_|_|_| >>> print(''.join(lst)) ||||||
Параллельная обработка списков – zip():
>>> list1 = [3, 4, 1, 2, 7] >>> list2 = [6, 9, 2, 5, 3] >>> list3 = [i + j for i, j in zip(list1, list2)] >>> print(list3) [9, 13, 3, 7, 10]
Предыдущий разделСледующий раздел