Списки Flashcards
Список
Упорядоченный, изменяемый набор объектов различных типов, пронумерованный от 0.
Синтаксис:
friens = [‘Vitya’,’Kolya’, ‘Egor’]
Список мутабелен, что это значит
Список способен изменяться по месту.
Метод, добавляющий в конец списка элемент, переданный методу в качестве аргумента
l.append(x)
Метод расширяет список, добавляя в конец список аргумент список
list.extend([1,2,3])
Автоматическое управление памятью
При внесении значения Python автоматически определяется необходимый объем памяти для внесения этого значения
Счетчик ссылок
Специальный механизм в Python, который держит в себе значения, которые означают какое количество раз ссылаются на определенное значение
https://docs.python.org/3/reference/datamodel.html#objects-values-and-types:~:text=are%20still%20reachable.-,CPython%20implementation%20detail,-%3A%20CPython%20currently
Функция возвращающая ссылку на объект переданный ей в качестве аргумента
id(object)
Оператор, сравнивающий идентификаторы ссылок 2-х объектов
a is b
Что выведется:
a = []
l = [a, a]
a.append(1)
print(l)
[[1],[1]]
Так происходит потому что, в списке хранится 2 ссылки на значение.
Метод списков, возвращающий копию списка
l.copy()
copy.deepcopy(l)
Удаляет и возвращает элемент по индексу, если его не указать индекс принимается как -1
l.pop(i)
Метод вставляющий перед элементом с индексом, переданным 1 аргументом метода, значение, переданное 2 аргументом.
l.insert(i,x)
Метод удаляющий из списка первый элемент эквивалентный значению, переданому в качестве аргумента.
l.remove(x)
Метод очищающий список
l.clear()
Возвращает индекс элемента, который эквивалентен x , start и end задает область поиска значения
l.index(x[,start[,end])
Сортирует значения по результатам ключа, ключ может быть кортежем, тогда сравниваются элементы кортежа (1 с 1, 2 со 2 и т.д.), если не указать ключ - в порядке возрастания
l.sort(*,key = None,Reverse = False)
Метод, который возвращает число равное количеству повтарений эллемента x в списке
l.count(x)
Разворачивает порядок списка
l.reverse()
Возвращает копию списка
l.copy()
copy.deepcopy(l)
Итератор
Итератор - это интерфейс обеспечивающий доступ к элементам коллеции,а также навигацию по ним.
Фунция, использующаяся для автоматического перебора элементов коллекции с автоматической индексацией.
Не перезапускаемый итератор, возвращает объект кортежами в которых заключена пара индекс, значение)
iterable - последовательность, итератор или иной объект, поддерживающий итерацию
enumerate(iterable,start)
Итерируемый объект
Протокол требует от объекта с которым он взаимодействует быть итерируемым - иметь специальный метод __iter__. Если объект итерируемый он возвращает итератор, который в свою очередь возвращает next()
Функция,которая возвращает итератор кортежей, где каждый кортеж i содержит i элемент каждой коллекции.
zip(iterable1, iterable2)