В этом модуле мы углубимся в работу со списками в Python, сосредоточившись на методах удаления элементов. Вы научитесь использовать метод pop() для извлечения элементов по индексу и метод clear() для полной очистки списка. Понимание разницы между просто удалением и "извлечением" (когда метод возвращает удаленное значение) критически важно для реализации таких структур данных, как стеки и очереди, а также для управления памятью и логикой программ. Задания варьируются от простого заполнения пропусков до анализа кода и восстановления алгоритмов. Будьте внимательны к индексам и возвращаемым значениям методами!
- Модуль 1: Основы синтаксиса Python
- Модуль 2: Переменные и типы данных
- Модуль 3: Операторы
- Арифметические операторы (+, -, *, /).
- Целочисленное деление и остаток (// и %).
- Возведение в степень (**).
- Операторы сравнения.
- Логические операторы (and, or, not).
- Операторы присваивания (=, +=, -=).
- Операторы принадлежности (in, not in).
- Операторы идентичности (is, is not).
- Битовые операторы.
- Тернарный оператор.
- Модуль 4: Ввод и вывод данных
- Модуль 5: Условные конструкции
- Модуль 6: Циклы
- Модуль 7: Строки
- Модуль 8: Списки
- Модуль 9: Кортежи
- Модуль 10: Словари
- Модуль 11: Множества
- Модуль 12: Функции
- Модуль 13: Встроенные функции
- Модуль 14: Работа с файлами
- Модуль 15: Обработка исключений
- Модуль 16: Модули и пакеты
- Модуль 17: ООП - Основы
- Модуль 18: ООП - Продвинутый уровень
- Модуль 19: Декораторы
- Модуль 20: Генераторы и итераторы
- Модуль 21: Регулярные выражения
- Модуль 22: Дата и время
- Модуль 23: Математические операции
- Модуль 24: Работа с сетью
- Модуль 25: Асинхронное программирование
- Модуль 26: Многопоточность
- Модуль 27: Тестирование
- Модуль 28: Базы данных
- Модуль 29: Алгоритмы и структуры данных
- Модуль 30: Продвинутые возможности
Методы удаления: назначение и синтаксис
Сопоставьте описание действия с соответствующим вызовом метода списка lst. Обратите внимание на разницу между удалением конкретного элемента, последнего элемента и очисткой всего списка.
lst.pop()lst.pop(index)lst.clear()Извлечение последнего элемента
У нас есть список задач. Завершите код так, чтобы последняя задача была удалена из списка и сохранена в переменную last_task.
todo_list = ['Code', 'Eat', 'Sleep']
# Извлекаем последний элемент
last_task = todo_list.input1S
print(f"Completed: {last_task}")Какой элемент вернет pop(i)?
Проанализируйте код. Метод pop() вызывается с индексом 1. Какой именно элемент попадет в переменную removed_item? Помните, что индексация в Python начинается с нуля.
colors = ['Red', 'Green', 'Blue', 'Yellow']
removed_item = colors.pop(1)
print(removed_item)Обработка очереди заявок
Соберите код, который обрабатывает первую заявку в очереди. Вам нужно объявить список, извлечь из него **первый** элемент (по принципу очереди FIFO) и вывести его на экран. Будьте внимательны с индексами и методами.
requests = ['req_101', 'req_102', 'req_103']current = requests.pop(0)print(f"Processing: {current}")current = requests.pop()current = requests.clear()Очистка корзины покупок
Пользователь нажал кнопку "Очистить корзину". Допишите код, используя метод, который удаляет **все** элементы из списка разом, не возвращая их.
cart = ['Apple', 'Banana', 'Milk']
print(f"Items before: {len(cart)}")
# Очищаем список полностью
cart.input1S
print(f"Items after: {len(cart)}")Что возвращают методы?
Расставьте вызовы методов так, чтобы переменная val1 получила удаленный элемент (число), а переменная val2 получила None (так как метод ничего не возвращает).
numbers = [10, 20, 30, 40]
more_numbers = [1, 2, 3]
# Должен сохраниться элемент 40
val1 = numbers.input1S
# Должно сохраниться None, а список more_numbers стать пустым
val2 = more_numbers.input2SОшибка в аргументах метода clear
Программист хотел очистить список, но по привычке попытался передать индекс в метод, который не принимает аргументов. Найдите и исправьте строку с ошибкой, чтобы список стал пустым.
data = [5.5, 2.4, 9.1]# Очищаем данныеdata.clear(0)print(data)Классификация: Изменяет список и возвращает значение?
Распределите выражения Python по двум категориям. В первую — те, которые удаляют элемент и **возвращают его** (можно присвоить переменной). Во вторую — те, которые только удаляют (или очищают) и **возвращают None**.
lst.pop()lst.clear()lst.pop(0)lst.append(5)lst.pop(-1)Перемещение элементов между списками
Восстановите логику перемещения данных. Задача: взять последний элемент из списка source и добавить его в список target. Затем вывести target.
target.append(item)source = [1, 2, 3]print(target)item = source.pop()target = []Математика с pop()
Что выведет этот код? Мы извлекаем два элемента из списка и складываем их. Введите получившееся число.
nums = [2, 5, 10]
a = nums.pop()
b = nums.pop()
print(a + b)