Списки являются изменяемыми упорядоченными коллекциями. Они могут содержать любое количество любых объектов, включая коллекции.[1, ['a', 'a'], {0.2, 2}, MyClass(), func]
Создание списков
[] и list()
lst = [] # литерал lst = list() # функция # [] lst = ['a', 'b', 'c'] # ['a', 'b', 'c']
Конвертация итерируемых объектов в списки
lst = list({1, 3, 3, 1, 2, 3}) # [1, 2, 3]
Списковые включения (list comprehensions)
col = [i**2 for i in range(10)] # [0, 1, 4, 9] # С тернарным оператором [i if i > 3 else 4 in col] # [4, 4, 4, 9] # c условием [i for i in col if i != 8] # [0, 1, 9] # Вложенные списковые включения print([[i**2 for i in j] for j in ((1, 2), (3, 4))]) # [[1, 4], [9, 16]]
Методы списков
Метод | Назначение |
---|---|
list.append(obj) | Добавляет элемент obj в конец списка |
list.count(obj) | Возвращает количество элементов со значениемobj в списке |
list.clear() | Очищает список |
list.copy() | Возвращает поверхностную копию списка |
list.extend(col) | Добавляет в конец списка элементы коллекции col |
list.index(obj, start=0, stop=-1]) | Возвращает индекс первого элемента со значением obj в диапазоне от start до stop |
list.insert(index, obj) | Вставляет объект obj в позицию index , смещая оставшиеся элементы правее |
list.pop(index=-1) | Удаляет и возвращает значение элемента из позиции index |
list.remove(val) | Удаляет первый элемент со значением val в списке |
list.reverse() | Разворачивает список |
list.sort(key=None, reverse=False) | Сортирует список по значению, которое возвращает функция key . Для обратной сортировки установите reverse=True |