Списки в Python

Тема: Уроки Python

Дата создания: 28 ноября 2024 г. 16:19

Списки в Python

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

По сути список это класс, и когда мы пишем a = [], то мы создаём экземпляр класса.
Через точку мы можем обращаться к его методам:

a.append()


Теперь к методам:

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

numbers = [1, 2, 3, 4, 5]  # список из чисел
words = ["apple", "banana", "cherry"]  # список из строк
mixed = [1, "apple", True]  # список с элементами разных типов



Основные методы работы со списками

1. Добавление элементов

append(x) — добавляет элемент в конец списка

fruits = ["apple", "banana"]
fruits.append("cherry")
print(fruits)  # ['apple', 'banana', 'cherry']



insert(i, x) — вставляет элемент x на позицию i

fruits = ["apple", "cherry"]
fruits.insert(1, "banana")  # вставляем на позицию 1
print(fruits)  # ['apple', 'banana', 'cherry']



extend(iterable) — расширяет список элементами из другого списка или итерации

fruits = ["apple", "banana"]
more_fruits = ["cherry", "orange"]
fruits.extend(more_fruits)
print(fruits)  # ['apple', 'banana', 'cherry', 'orange']



2. Удаление элементов

remove(x) — удаляет первый элемент со значением x

fruits = ["apple", "banana", "cherry"]
fruits.remove("banana")
print(fruits)  # ['apple', 'cherry']



pop(i) — удаляет элемент на позиции i и возвращает его. Если i не указан, удаляет последний элемент.

fruits = ["apple", "banana", "cherry"]
last = fruits.pop()  # удаляем последний элемент
print(fruits)  # ['apple', 'banana']
print(last)  # 'cherry'



clear() — удаляет все элементы из списка

fruits = ["apple", "banana", "cherry"]
fruits.clear()
print(fruits)  # []



3. Поиск элементов

index(x) — возвращает индекс первого элемента со значением x

fruits = ["apple", "banana", "cherry"]
print(fruits.index("banana"))  # 1



count(x) — считает количество элементов со значением x

numbers = [1, 2, 2, 3, 2]
print(numbers.count(2))  # 3



4. Сортировка и изменение порядка

sort() — сортирует список по возрастанию (или убыванию, если указать reverse=True)

numbers = [5, 2, 9, 1]
numbers.sort()
print(numbers)  # [1, 2, 5, 9]

numbers.sort(reverse=True)
print(numbers)  # [9, 5, 2, 1]



reverse() — переворачивает список

numbers = [1, 2, 3]
numbers.reverse()
print(numbers)  # [3, 2, 1]



5. Копирование списка

copy() — создает поверхностную копию списка

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

original = [1, 2, 3]
copy_list = original.copy()
print(copy_list)  # [1, 2, 3]



Другие полезные операции

С помощью оператора in можно проверить, есть ли элемент в списке:

fruits = ["apple", "banana", "cherry"]
print("banana" in fruits)  # True
print("orange" in fruits)  # False



Перебор элементов списка с помощью цикла for:

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)



Создание списков с помощью генераторов:

Генераторы списков — это компактный синтаксис для создания новых списков на основе существующих последовательностей или диапазонов. Вместо написания длинного цикла for, генератор позволяет создать список одной строкой.

squares = [x**2 for x in range(5)]
print(squares)  # [0, 1, 4, 9, 16]


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

Ко всем постам