Python List

Последовательности — это самые основные структуры данных в Python. Каждому элементу в последовательности присваивается номер — его позиция или индекс. Первый индекс — 0, второй индекс — 1, и так далее.

В Python есть 6 встроенных типов последовательностей, но самые распространённые — это списки и кортежи.

Операции, которые можно выполнять над всеми последовательностями, включают индексацию, срезы, сложение, умножение и проверку принадлежности.

Кроме того, Python имеет встроенные методы для определения длины последовательности, а также для определения наибольшего и наименьшего элементов.

Списки — самый часто используемый тип данных Python; они могут быть представлены в виде значений, разделённых запятыми, в квадратных скобках.

Элементы данных списка не обязательно должны быть одного и того же типа.

Чтобы создать список, просто заключите различные элементы данных, разделённые запятыми, в квадратные скобки. Как показано ниже:

list1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5 ] list3 = ["a", "b", "c", "d"]

Как и в случае индексации строк, индексация списков начинается с 0. Списки можно нарезать, объединять и так далее.


Доступ к значениям в списке

Используйте индексацию для доступа к значениям в списке. Аналогично можно использовать квадратные скобки для среза символов, как показано ниже:

Пример (Python 2.0+)

#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5, 6, 7 ] print "list1[0]: ", list1[0] print "list2[1:5]: ", list2[1:5]

Вывод приведенного выше примера:

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]

Обновление списка

Вы можете изменять или обновлять элементы данных списка. Вы также можете использовать метод append() для добавления элементов списка, как показано ниже:

Пример (Python 2.0+)

#!/usr/bin/python # -*- coding: UTF-8 -*- list = [] ## Пустой список list.append('Google') ## Использование append() для добавления элементов list.append('Example') print list

Примечание:Мы обсудим использование метода append() в последующей главе.

Вывод приведенного выше примера:

['Google', 'Example']

Удаление элементов списка

Вы можете использовать инструкцию del для удаления элементов списка, как в следующем примере:

Пример (Python 2.0+)

#!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000] print list1 del list1[2] print "После удаления значения по индексу 2: " print list1

Вывод приведенного выше примера:

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]

Примечание:Мы обсудим использование метода remove() в последующей главе.


Операторы списков Python

Списки используют операторы + и * аналогично строкам. Знак + используется для объединения списков, а знак * — для повторения списков.

Как показано ниже:

Выражение PythonРезультатОписание
len([1, 2, 3])3Длина
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]Комбинация
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']Повторение
3 in [1, 2, 3]TrueНаличие элемента в списке
for x in [1, 2, 3]: print x,1 2 3Итерация

Срезы списков Python

Пример среза списка Python выглядит следующим образом:

>>>L = ['Google', 'Example', 'Taobao'] >>> L[2] 'Taobao' >>> L[-2] 'Пример' >>> L[1:] ['Пример', 'Taobao'] >>>

Описание:

Выражение PythonРезультатОписание
L[2]'Taobao'Прочитать третий элемент в списке
L[-2]'Example'Прочитать предпоследний элемент в списке
L[1:]['Example', 'Taobao']Срез списка, начиная со второго элемента

Функции & методы списков Python

Python включает следующие функции:

Нет.Функция
1cmp(list1, list2)
Сравнение элементов двух списков
2len(list)
Количество элементов списка
3max(list)
Возвращает максимальное значение элементов списка
4min(list)
Возвращает минимальное значение элементов списка
5list(seq)
Преобразует кортеж в список

Python включает следующие методы:

Нет.Метод
1list.append(obj)
Добавляет новый объект в конец списка
2list.count(obj)
Подсчитывает, сколько раз элемент встречается в списке
3list.extend(seq)
Добавить несколько значений из другой последовательности в конец списка сразу (расширить исходный список новым списком)
4list.index(obj)
Найти индекс позиции первого совпадающего элемента значения в списке
5list.insert(index, obj)
Вставить объект в список
6list.pop([index=-1])
Удалить элемент из списка (по умолчанию последний элемент) и вернуть значение этого элемента
7list.remove(obj)
Удалить первый совпадающий элемент значения в списке
8list.reverse()
Изменить порядок элементов в списке на обратный
9list.sort(cmp=None, key=None, reverse=False)
Отсортировать исходный список
Другие расширения