Понимание списка Python, добавление, сортировка, длина [ПРИМЕРЫ]
Что такое список Python?
Список — это именно то, на что он похож, контейнер, содержащий различные объекты Python, которые могут быть целыми числами, словами, значениями и т. д. Это эквивалент массива в других языках программирования. Он представлен квадратными скобками (и это один из атрибутов, который отличает его от кортежей, которые разделяются круглыми скобками). Он также изменчив, то есть его можно модифицировать или обновить; в отличие от кортежей, которые неизменяемы.
Из этого руководства по Python вы узнаете:
- Что такое список Python?
- Примеры списков Python:
- Доступ к значениям в списках
- Нарезка списка Python
- Обновление списков
- Удаление элементов списка
- Добавление элементов списка
- Список встроенных функций (методов)
- Перебор списков
- Список понятий Python
Примеры списков Python:
Списки Python могут быть однородными, что означает, что они могут содержать объекты одного и того же типа; или разнородными, включая объекты разных типов.
Примеры однородных списков включают:
list of integers = [1, 2, 3, 8, 33] list of animals = ['dog', 'cat', 'goat'] list of names = ['John', 'Travis', 'Sheila'] list of floating numbers = [2.2, 4.5, 9.8, 10.4]
Примеры разнородных списков включают:
[2, 'cat', 34.33, 'Travis'] [2.22, 33, 'pen']
Доступ к значениям в списках
Для доступа к значениям в списках можно использовать индекс объектов внутри списков. Индекс в списках Python относится к положению элемента в упорядоченном списке. Например:
list = [3, 22, 30, 5.3, 20]
- Первое значение в списке выше, 3, имеет индекс 0
- Второе значение, 22, имеет индекс 1.
- Третье значение, 30, имеет индекс 2.
и так далее. Чтобы получить доступ к каждому из значений из списка, вы должны использовать:
list[0] to access 3 list[1] to access 22 list[2] to access 30 list[3] to access 5.3 list[4] to access 20
Доступ к последнему элементу списка также можно получить с помощью индекса -1. Например,
list[-1] = 20
Нарезка списка Python
Нарезка списка — это метод разделения подмножества списка, для этого также используются индексы объектов списка. Например, используя тот же пример списка выше;
list[:] = [3, 22, 30, 5.3, 20] (all the members of the list]; list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3); list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4) list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).
Списки Python исключают верхнюю границу, и это означает, что последний индекс во время нарезки списка обычно игнорируется. Вот почему
list[2:-1] = [30, 5.3]
, а не [30, 5.3, 20]. То же самое относится ко всем другим примерам нарезки списка, приведенным выше.
Обновление списков
Допустим, у вас есть список =[физика, химия, математика], и вы хотите изменить список на [биология, химия, математика], эффективно изменив элемент с индексом 0. Это можно легко сделать, назначив этот индекс элементу новый участник, которого вы хотите.
То есть
list = [physics, chemistry, mathematics] list[0] = biology print(list)
Вывод:[биология, химия, математика]
Это заменяет элемент с индексом 0 (физика) на новое значение, которое вы хотите (химия). Это можно сделать для любого члена или подмножества списка, который вы хотите изменить.
Чтобы привести другой пример; допустим, у вас есть список целых чисел, содержащий числа [2, 5, 9, 20, 27]. Чтобы заменить 5 в этом списке на 10, вы можете сделать это с помощью:
integers = [2, 5, 9, 20, 27] integers[1] = 10 print(integers) >>> [2, 10, 9, 20, 27]
Чтобы заменить последний член списка целых чисел, равный 27, на свободное число, такое как 30,5, вы должны использовать:
integers = [2, 5, 9, 20, 27] integers[-1] = 30.5 print(integers) >>> [2, 5, 9, 20, 30.5]
Удаление элементов списка
Существует 3 метода Python для удаления элементов списка:list.remove(), list.pop() и оператор del. Метод Remove принимает конкретный удаляемый элемент в качестве аргумента, а pop и del принимают в качестве аргумента индекс удаляемого элемента. Например:
список =[3, 5, 7, 8, 9, 20]
Чтобы удалить 3 (1-й элемент) из списка, вы можете использовать:
- list.remove(3) или
- list.pop[0] или
- удалить список[0]
Чтобы удалить 8, элемент с индексом 3, из списка, вы можете использовать:
- list.remove(8) или
- list.pop[3]
Добавление элементов списка
Чтобы добавить элементы в список, используется метод append, который добавляет элемент в конец списка.
Например:
list_1 = [3, 5, 7, 8, 9, 20] list_1.append(3.33) print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33] list_1.append("cats") print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]
Список встроенных функций (методов)
Ниже приведен список встроенных функций и методов с их описаниями:
- длина(список): это дает длину списка в качестве вывода. Например:
numbers = [2, 5, 7, 9] print(len(numbers)) >>> 4
- макс.(список): возвращает элемент в списке с максимальным значением. Например:
numbers = [2, 5, 7, 9] print(max(numbers)) >>> 9
- мин(список): возвращает элемент в списке с минимальным значением. Например:
numbers = [2, 5, 7, 9] print(min(numbers)) >>> 2
- список(кортеж): преобразует объект кортежа в список. Например;
animals = (cat, dog, fish, cow) print(list(animals)) >>> [cat, dog, fish, cow]
- list.append (элемент):добавляет элемент в список. Например;
numbers = [2, 5, 7, 9] numbers.append(15) print(numbers) >>> [2, 5, 7, 9, 15]
- список.pop (индекс):удаляет элемент с указанным индексом из списка. Например;
numbers = [2, 5, 7, 9, 15] numbers.pop(2) print(numbers) >>> [2, 5, 9, 15]
- список.удалить (элемент):удаляет элемент из списка.Например;
values = [2, 5, 7, 9] values.remove(2) print(values) >>> [5, 7, 9]
- список.reverse ():переворачивает объекты списка. Например;
values = [2, 5, 7, 10] values.reverse() print(values) >>> [10, 7, 5, 2]
- список.index (элемент):чтобы получить значение индекса элемента в списке. Например;
animals = ['cat', 'dog', 'fish', 'cow', 'goat'] fish_index = animals.index('fish') print(fish_index) >>> 2
- сумма (список):чтобы получить сумму всех значений в списке, если все значения являются числами (целыми или десятичными). Например;
values = [2, 5, 10] sum_of_values = sum(values) print(sum_of_values) >>> 17
Если список содержит какой-либо элемент, не являющийся числом, например строку, метод суммы не будет работать. Вы получите сообщение об ошибке:«TypeError :неподдерживаемые типы операндов для +:‘int’ и ‘str’”
- list.sort():для упорядочения списка целых чисел, чисел с плавающей запятой или строк в порядке возрастания или убывания. Например:
values = [1, 7, 9, 3, 5] # To sort the values in ascending order: values.sort() print(values) >>> [1, 3, 5, 7, 9]
Другой пример:
values = [2, 10, 7, 14, 50] # To sort the values in descending order: values.sort(reverse = True) print(values) >>> [50, 14, 10, 7, 2]
Список строк также можно отсортировать по алфавиту или по длине строк. Например;
# to sort the list by length of the elements strings = ['cat', 'mammal', 'goat', 'is'] sort_by_alphabet = strings.sort() sort_by_length = strings.sort(key = len) print(sort_by_alphabet) print(sort_by_length) >>> ['cat', 'goat', 'is', 'mammal'] ['is', 'cat', 'goat', 'mammal']
Мы можем отсортировать тот же список в алфавитном порядке, используя «строки».
Перебор списков
Циклический просмотр списков можно выполнять точно так же, как и любую другую циклическую функцию в Python. Таким образом, метод может выполняться для нескольких элементов списка одновременно. Например:
список =[10, 20, 30, 40, 50, 60, 70].
Чтобы пройтись по всем элементам этого списка и, скажем, добавить 10 к каждому элементу:
for elem in list: elem = elem + 5 print(elem) >>>>15 25 35 45 55 65 75
Чтобы просмотреть первые три элемента списка и удалить их все;
for elem in list[:3]: list.remove(elem) >>>list = [40, 50, 60, 70]
Чтобы перебрать 3 rd (индекс 2) до последнего элемента в списке и добавить их в новый список с именем new_list:
new_list = [] for elem in list[2:]: new_list.append(elem) print(“New List: {}”.format(new_list)) Output: New List: [30, 40, 50, 60, 70]
Таким образом, любой метод или функция могут быть применены к членам списка для выполнения конкретной операции. Вы можете пройтись по всем элементам списка или подмножеству списка, используя нарезку списка.
Список понятий Python
Генераторы списков — это функции Python, которые используются для создания новых последовательностей (таких как списки, словари и т. д.) с использованием уже созданных последовательностей. Они помогают сократить число длинных циклов и упрощают чтение и обслуживание кода.
Например; допустим, вы хотите создать список, содержащий квадраты всех чисел от 1 до 9:
list_of squares = [] for int in range(1, 10): square = int ** 2 list_of_squares.append(square) print(list_of_squares) List_of_squares using for loop: [1, 4, 9, 16, 25, 36, 49, 64, 81]
Чтобы сделать то же самое со списками:
list_of_squares_2 = [int**2 for int in range(1, 10)] print('List of squares using list comprehension: {}'.format(list_of_squares_2)) Output using list comprehension: [1, 4, 9, 16, 25, 36, 49, 64, 81]
Как видно выше, написание кода с использованием списков намного короче, чем с использованием традиционных циклов for, а также быстрее. Это всего лишь один пример использования списков вместо циклов for, но его можно воспроизвести и использовать во многих местах, где также можно использовать циклы for. Иногда использование цикла for является лучшим вариантом, особенно если код сложный, но во многих случаях понимание списка упростит и ускорит кодирование.
Ниже приведена таблица, содержащая некоторые функции и методы списка, а также их описания.
Встроенные функции
ФУНКЦИЯ | ОПИСАНИЕ |
---|---|
Округление() | Округляет число, переданное в качестве аргумента, до указанного количества цифр и возвращает значение с плавающей запятой |
Мин() | возврат минимального элемента заданного списка |
Макс() | возвратить максимальный элемент заданного списка |
len() | Возвращает длину списка |
Перечислить() | Эта встроенная функция генерирует как значения, так и индексы элементов в итерируемом объекте, поэтому нам не нужно считать вручную |
Фильтр() | проверяет, является ли каждый элемент списка истинным или нет |
Лямбда | Выражение, которое может появляться в местах, где определение (для создания функций) не является синтаксическим, внутри литерала списка или аргументов вызова функции |
Карта() | возвращает список результатов после применения данной функции к каждому элементу данного итерируемого объекта |
Накопить() | применить конкретную функцию, переданную в ее аргументе, ко всем элементам списка, возвращает список, содержащий промежуточные результаты |
Сумма() | Возвращает сумму всех чисел в списке |
Cmp() | Используется для сравнения двух списков и возвращает 1, если первый список больше второго. |
Вставить | Вставить элемент в список в определенной позиции |
Список методов
ФУНКЦИЯ | ОПИСАНИЕ |
---|---|
Добавить() | Добавляет новый элемент в конец списка |
Очистить() | Удаляет все элементы из списка |
Копировать() | Возвращает копию исходного списка |
Расширить() | Добавить много элементов в конец списка |
Подсчет() | Возвращает количество вхождений определенного элемента в списке |
Индекс() | Возвращает индекс определенного элемента списка |
Поп() | Удаляет элемент из списка по определенному индексу (удалить по позиции) |
Удалить() | Удаляет указанный элемент из списка (удалить по значению) |
Реверс() | Метод реверсирования на месте, который меняет порядок элементов списка |
Обзор
- Список — это именно то, на что он похож:контейнер, содержащий различные объекты Python, которые могут быть целыми числами, словами, значениями и т. д.
- Списки Python могут быть однородными, т. е. содержать объекты одного типа; или разнородными, содержащими разные типы объектов.
- Для доступа к значениям в списках можно использовать индекс объектов внутри списков.
- Срез списка — это метод разделения подмножества списка, и для этого также используются индексы объектов списка.
- Три метода удаления элементов списка:1)list.remove(), 2)list.pop() и 3)оператор del.
- Метод Append используется для добавления элементов. Это добавит элемент в конец списка.
- Метод цикла программы Python может быть применен к нескольким элементам списка данных одновременно.
- Списковые включения — это функции Python, которые используются для создания новых последовательностей (например, списков, словарей и т. д.) с использованием уже созданных последовательностей.
Python