Найти тему

Python. Методы списка index( ), count( ), sort( ), reverse(), copy(). (45)

Метод list.index( )

Синтаксис:

[список].index(значение, начало_среза, конец_среза)

значение – искомое значение.

начало_среза – индекс элемента (порядковый номер, начало отсчета 0), начиная с которого будет осуществляться поиск искомого значения. Необязательный аргумент, по умолчанию равен нулю.

конец_среза – индекс элемента, заканчивая которым (сам элемент с индексом равным значению аргумента конец_среза не входит в срез) будет осуществляться поиск искомого значения. Необязательный аргумент, по умолчанию равен индексу последнего элемента списка.

Метод index ищет в списке искомое значение и в случае если искомое значение есть возвращает целое число(int) равное индексу первого встреченного искомого значения. В случае если искомого значения в списке – нет, возбуждает исключение ValueError.

Метод list.count( )

Синтаксис:

[список].count(значение)

значение – искомое значение.

Метод count возвращает целое число(int) равное количеству вхождений искомого значение в список.

-2

Метод list. sort ( )

Синтаксис:

[список].sort(key=None, reverse=False)

key – функция, принимающая один аргумент, применяемая к каждому элементу списка. Сортируются полученные, после применения функции, значения. Необязательный аргумент.

reverse – в случае если этот именной аргумент равен True, сортировка будет произведена в обратном порядке. Необязательный аргумент.

Метод sort сортирует список в порядке возрастания если аргумент reverse =None и в порядке убывания если аргумент reverse = True. В случае если методу передается аргумент key, то сначала к каждому элементу списка будет применена функция, а после этого список будет отсортирован.

-3

Метод sort() сортируя изменяет исходный список (сортирует по «месту»). Метод возвращает None.

-4

Метод list.reverse( )

Синтаксис:

[список].reverse( )

Метод reverse «переворачивает» список, переставляет элементы в обратном порядке, сначала становиться последний элемент, а в конец первый элемент. Метод reverse «переворачивая» список изменяет исходный список (сортирует по «месту»). Метод возвращает None.

-5

Метод list.copy( )

Синтаксис:

[список].copy( )

Метод copy возвращает копию списка.

-6

UPD

Как справедливо заметил в комментариях Pavel E. метод copy() делает поверхностную копию списка, что это означает, в Python переменные хранят не присвоенные им значения, а ссылки на ячейки памяти в которых лежат значения присвоенные переменным.

-7

Метод copy() копирует ссылки на ячейки памяти. И если применительно к числам это допустимо, метод скопирует ссылку на ячейку памяти в которой лежит число, то применение метода copy() к списку в котором есть вложенные списки или словари может привести к ошибке, которую будет очень сложно найти.

Показать как возникает ошибка при использовании метода copy() можно на примере:

-8

Происходит это именно потому что метод copy() делает поверхностную копию списка, т.е. копирует только ссылки на ячейки памяти с лежащими в них значениями. Когда в ячейке памяти лежит число засунуть в эту ячейку уже больше ничего нельзя, но когда в ячейке памяти лежит список, изменить его можно и изменив его изменятся все значения переменных которые ссылаются на эту ячейку.

По ссылкам можно почитать мои конспекты:

Книги и курсы по Python
Книги и курсы по Python год спустя.
Встроенные функции (Built-in)
Методы словаря (Dict methods)
Методы списков (List methods)
Строковые методы (String Methods)
Библиотека os
Спецификаторы
Итерируемый тип данных
Инструкции continue, break и pass
Цикл for … in
Цикл while
Условная инструкция if
Индексация
Переменные
Встроенные функции print() и input()
Оператор присваивания
Основные типы данных
Коротко о языке

Наука
7 млн интересуются