Списки (list). Функции и методы списков. Операции со списками python.

Структуры for/in очень часто используются в коде Python и работают с другими типами данных, чем list, поэтому вам необходимо запомнить их синтаксис. Из других языков у вас могла выработаться привычка вручную итерировать коллекцию, тогда как в Python вы должны использовать только for/in.

Списки(list) в Python – подробно с примерами

В Python существует шесть типов данных, которые могут хранить последовательности, но самым распространенным и надежным типом является список.

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

Список может быть определен, как показано ниже:

L1 = "Джон", 102, "США" L2 = 1, 2, 3, 4, 5, 6.

Если мы попытаемся вывести тип L1, L2 и L3 с помощью type(), то получим список.

print(type(L1)) print(type(L2))

Характеристики списков

Список имеет следующие характеристики:

  • Списки упорядочены.
  • Доступ к элементу списка можно получить по индексу.
  • Списки являются изменяемыми типами.
  • Список может хранить количество различных элементов.

Проверим первое утверждение, что списки упорядочены.

a = 1,2, "Питер",4.50, "Рикки",5,6 b = 1,2,5, "Питер",4.50, "Рикки",6 a ==b

Оба списка состоят из одинаковых элементов, но во втором списке позиция индекса 5-го элемента изменена. Сравнение списков дает false.

Списки сохраняют порядок элементов на протяжении всего времени их существования. По этой причине они представляют собой упорядоченное множество объектов.

a = 1, 2, "Питер", 4.50, "Рикки",5, 6 b = 1, 2, "Питер", 4.50, "Рикки",5, 6 a == b

Давайте подробнее рассмотрим пример списка.

emp = "John", 102, "USA" Dep1 = "CS",10 Dep2 = "IT",11 HOD_CS = 10, "Mr. Holding" HOD_IT = 11, "Mr. Bewon" print("print employee details.") print("Name : %s, ID: %d, Country: %s"%(emp0,emp1,emp2)) print("print departments. ") print("Факультет 1:

Name: %s, ID: %d

Департамент 2:

Индексирование и расщепление списка

Name: %s, ID: %s»%(Dep10,Dep21,Dep20,Dep21)) print(«HOD Details. «) print(«CS HOD Name: %s, Id: %d»%(HOD_CS1,HOD_CS0)) print(«IT HOD Name: %s, Id: %d»%(HOD_IT1,HOD_IT0)) print(type(emp),type(Dep1),type(Dep2),type(Dep2),type(HOD_CS),type(HOD_IT))

Печать данных о сотрудниках. Имя : Джон, ID : 102, Страна : США Сегменты печати. Раздел 1: Название : CS, ID : 11 Раздел 2: Название : IT, ID : 11 HOD Details. CS HOD Имя: г-н Холдинг, Id: 10 IT HOD Имя: г-н Бевон, Id: 11

Индексация списка

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

Индексирование выполняется так же, как и для строк. Доступ к элементам списка можно получить с помощью оператора slice.
  • start обозначает начальную позицию индекса в списке;
  • stop обозначает последнюю позицию индекса в списке;
  • step используется для пропуска n-го элемента в start:stop.

Индекс начинается с 0 и увеличивается на 1. Первый элемент списка хранится под индексом 0, второй элемент списка — под индексом 1 и так далее.

Мы можем получить срез списка с помощью следующего синтаксиса.
list_varible(start:stop:step)

Рассмотрим следующий пример:

Отрицательная индексация

list = 1,2,3,4,5,6,7 print(list0) print(list1) print(list2) print(list3) # Разделение элементов print(list0:6) # По умолчанию значение индекса равно 0, поэтому начинается с 0-го элемента и продолжается для индекс а-1. print(list:) print(list2:5) print(list2:5) print(list1:6:2)

1 2 3 4 1, 2, 3, 4, 5, 6 1, 2, 3, 4, 5, 6, 7 3, 4, 5 2, 4, 6
В отличие от других языков, Python также допускает отрицательную индексацию. Отрицательные индексы отсчитываются вправо. Последний элемент (самый правый) в списке имеет индек с-1; соседний крайний левый элемент имеет индек с-2, и так далее, пока не встретятся крайние левые элементы.

В следующем примере мы используем отрицательную индексацию для доступа к элементам списка.

list = 1,2,3,4,5 print(list-1) print(list-3:) print(list-3:-1) print(list-3:-1)

5 3, 4, 5 1, 2, 3, 4 3, 4

Как описано выше, мы можем получить элемент с отрицательной индексацией. В приведенном выше коде первая команда print вернула самый правый элемент списка. Вторая команда печати вернула неполный список и так далее.

Списки в Python — это упорядоченные, редактируемые коллекции объектов произвольного типа (почти как таблица, но типы могут быть разными).

Чтобы использовать списки, их нужно создать. Существует несколько способов создания списка. Например, вы можете разобрать любой объект итерации (например, строку) с помощью встроенной функции list:

Список также может быть создан с помощью словаря:

Как видно из примера, список может содержать любое количество объектов (включая вложенные списки) или ничего.

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

Другой способ создания списка — генераторы списков. Генератор списка — это способ создания нового списка путем применения выражения к каждому элементу последовательности. Генераторы списков очень похожи на цикл for.

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

Поверхностная копия списка

List.delete ()

Удаляет список

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

  • Книги о Python
  • GUI (графический интерфейс пользователя)
  • Курсы Python
  • Модули
  • Новости мира Python
  • NumPy
  • Обработка данных
  • Основы программирования
  • Примеры программ
  • Типы данных в Python
  • Видео
  • Python для Web
  • Работа для Python-программистов

Изменяемость списков в Python

И, наконец, несколько примеров работы со списками:

Иногда, для повышения производительности, списки заменяются гораздо менее гибкими массивами (хотя в таких случаях обычно используются сторонние библиотеки, такие как NumPy).

shopping_list2 = 'candy' print(shopping_list) # Вывод>>Чтобы вставить код Python в комментарий, используйте теги.

Индексация списков в Python

Что касается списков покупок, то мы вольны их менять. Например, убрать овсяное печенье и добавить наши любимые сладости. Аналогичным образом мы можем изменять списки в Python. Таким образом, списки - это изменяемый тип данных.

Посмотрите, как можно заменить овсяное печенье конфетами:

"яблоки", "карандаши", "конфеты", "блокнот", "кисточка", "краски".

Вы заметили, что элемент овсяное печенье является третьим в списке, но для его замены мы используем индекс 2? Проблема в том, что индексация начинается с нуля. В Python индекс - это, по сути, отступ от начала списка.

print(shopping_list6) # Вывод>>-------------------------------------------------------------------------- IndexError Traceback (most recent call last) in () ---->Первый элемент имеет индекс 0 (отступов нет, элемент находится в начале списка). Второй элемент имеет индекс 1. И так далее. Если список содержит n элементов, то последний элемент обычно имеет индекс (n-1).

Если мы попытаемся получить доступ к элементу с несуществующим индексом, мы получим ошибку IndexError.

print(shopping_list-1) # Вывод>>В нашем примере мы имеем список покупок с 6 элементами (диапазон индексов 0-5). Когда мы пытаемся получить доступ к элементу с индексом 6, мы получаем сообщение об ошибке, потому что элемента с таким индексом просто не существует, как показано в следующем коде.

1 shopping_list6 IndexError: индекс списка вне диапазона.

С другой стороны, мы можем использовать и отрицательные индексы. Последний элемент списка имеет индек с-1, предпоследний элемент - индек с-2 и т.д.

Цвет

Подобно тому, как список покупок может содержать все виды товаров (фрукты, овощи, сладости и т.д.), список в Python может содержать все виды товаров.

Как перебирать список в цикле

Таким образом, список может содержать другие списки в качестве элементов. Это называется вложением, и эти списки являются вложенными.

Вот пример вложенного списка покупок, который содержит два меньших списка:

'my_nested_list = 'apple', 'banana', 'paint', 'paintbrush'.

split() и join()

Чтобы проверить, все ли мы купили, мы снова и снова перечитываем список покупок. В программировании это называется "пройтись по списку". В Python списки - это циклы, в которых используется оператор in.

for item in shopping_list: print(item) # apple pen candy notebook brush print

>>>s = 'Please visit website'>>>s 'Please visit website'>>>a = s.split()>>>a 'Please', 'visit', 'website'>>>a.insert(2, "topbicycle.ru")>>>a 'Please', 'visit', 'topbicycle.ru', 'website'>>>s = ' '.join(a)>>>Если мы не хотим выводить элементы списка, а хотим что-то сделать с каждым из них, лучше использовать диапазон для получения индексов, а затем пройтись по ним циклом.

Вы можете использовать функцию split() для преобразования строки в список.

pop(0)

Преобразование списка в строку с помощью join()

s "Пожалуйста, посетите сайт topbicycle.ru".

Для удаления последнего элемента списка используется функция pop().

>>>c = "Armenia Finland Georgia Germany Italy Norway Russia Spain Sweden".split()>>>c 'Armenia', 'Finland', 'Georgia', 'Germany', 'Italy', 'Norway', 'Russia', 'Spain', 'Sweden'>>>del c3>>>c 'Armenia', 'Finland', 'Georgia', 'Italy', 'Norway', 'Russia', 'Spain', 'Sweden'>>>c.remove('Norway')>>>c 'Armenia', 'Finland', 'Georgia', 'Italy', 'Russia', 'Spain', 'Sweden'>>>del cc.index('Sweden')>>>Чтобы удалить первый элемент списка

reverse() и sort()

>>>d = 1, 5, 70>>>d.reverse()>>>d 70, 5, 1>>>e = 8, 3, 14>>>e.sort()>>>e 3, 8, 14>>>e.sort(reverse=True)>>>Чтобы удалить любой элемент из списка, передайте pop() указатель на элемент

>>>w = 'Please visit topbicycle.ru website'.split()>>>w 'Please', 'visit', 'topbicycle.ru', 'website'>>>w.sort(key=len)>>>Чтобы удалить элемент из списка, вы можете использовать следующее

>>>x = 4, 9, 2, 1>>>y = sorted(x)>>>y 1, 2, 4, 9>>>x 4, 9, 2, 1>>>p = 9, 3, 1, 0>>>q = reversed(p)>>>q>>>c "Армения", "Финляндия", "Грузия", "Италия", "Россия", "Испания".

Оцените статью
Uhistory.ru
Добавить комментарий