Статья Объект List [Список] в Pyton

Кирилл

Команда форума
Администратор
Сообщения
13,775
Реакции
6,146
Баллы
913
Объект List [Список] - это изменяемый объект, представляющий из себя коллекцию произвольных объектов.

Что бы было легче понять, давайте представим список в виде подобной схемы:

Пример списка: ['Список'].

Введите в интерпретаторе:

Python:
y = list('Список')
print(y)
Вывод будет следующим :
['С', 'п', 'и', 'с', 'о', 'к']

Что произошло?

1) Мы назначили переменной y значение list('Список')

2) Функция list создает объект 'Список'


3) Внутри объекта ['Список'] создаются объекты, словно в контейнере.

4) Каждый объект внутри списка ссылается на собственный объект в памяти, то есть, по сути является его переменной.

list.png




Каждый вложенный внутри списка объект является изменяемым, то есть его можно изменить.
Так же мы имеем возможность обращаться к элементам списка, каждый элемент имеет свой цифровой индекс.
Индексация начинается с нуля, то есть первый элемент списка всегда имеет индекс 0.

Итак, вернемся к пункту №2 - функции list, с помощью которой был создан список.

Список можно создать и другими способами. Перечислим их:

1) Функция list( )
Ввод:
y = list('Список')
print(y)
Вывод:
['С', 'п', 'и', 'с', 'о', 'к']
2) При помощи литерала с квадратными скобками - [ ]

Ввод:
y = [Список]
print(y)
Вывод:
['Список']
Обратите внимание - функция list разбивает вводимые данные на символы, присваивая каждому из них свой объект внутри списка.
То есть объект с индексом 0 ссылается на строковой объект "С" в памяти компьютера, и так с каждым последующим символом.
При создании списка через литерал с квадратными скобками мы ввели те же данные, но теперь вся строка является объектом, на который ссылается объект списка с индексом 0

3) С помощью генератора списков

Ввод:
y = [list('Список')[i] for i in range(len('Список'))]
print(y)
Вывод:
['С', 'п', 'и', 'с', 'о', 'к']
Если синтаксис генератора вам кажется сложным и непонятен - то сначала необходимо изучить тему генераторы в python

Как можно обратиться к нужному объекту списка?
По индексу.

Номер индекса указывается в квадратных скобках после списка.
Ввод:
y = list('Список')
print(y[1])
Ввод:
print(list('Список')[1])
В обоих случаях вывод будет одинаков - под индексом 1 у нас в списке значится символ "п"

Вывод:
п

Ниже перечислены основные методы списков:

  • list.append(x) Добавляет элемент в конец списка
  • list.extend(L) Расширяет список list, добавляя в конец все элементы списка L
  • list.insert(i, x) Вставляет на i-ый элемент значение x
  • list.remove(x) Удаляет первый элемент в списке, имеющий значение x
  • list.pop() Удаляет i-ый элемент и возвращает его. Если индекс не указан, удаляется последний элемент
  • list.index(x, [start [, end]]) Возвращает положение первого элемента от start до end со значением x
  • list.count(x) Возвращает количество элементов со значением x
  • list.sort([key = функция]) Сортирует список на основе функции list.reverse() Разворачивает список
  • list.copy() Поверхностная копия списка (начиная с python 3.3)
  • list.clear() Очищает список (начиная с python 3.3)
 
Последнее редактирование:
Сверху Снизу