Методы pop() и clear()

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

В этом модуле мы углубимся в работу со списками в Python, сосредоточившись на методах удаления элементов. Вы научитесь использовать метод pop() для извлечения элементов по индексу и метод clear() для полной очистки списка. Понимание разницы между просто удалением и "извлечением" (когда метод возвращает удаленное значение) критически важно для реализации таких структур данных, как стеки и очереди, а также для управления памятью и логикой программ. Задания варьируются от простого заполнения пропусков до анализа кода и восстановления алгоритмов. Будьте внимательны к индексам и возвращаемым значениям методами!

Список тем

Методы удаления: назначение и синтаксис

id: 40006_task_compare_methods

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

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Удаляет и возвращает последний элемент списка
Удаляет и возвращает элемент по указанному индексу
Удаляет все элементы из списка, делая его пустым
lst.pop()
lst.pop(index)
lst.clear()
Сообщения
Проверить
Показать подсказку

Извлечение последнего элемента

id: 40006_task_replace_pop_basic

У нас есть список задач. Завершите код так, чтобы последняя задача была удалена из списка и сохранена в переменную last_task.

Заполните пропуски
todo_list = ['Code', 'Eat', 'Sleep']
# Извлекаем последний элемент
last_task = todo_list.input1S
print(f"Completed: {last_task}")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Какой элемент вернет pop(i)?

id: 40006_task_predict_pop_index

Проанализируйте код. Метод pop() вызывается с индексом 1. Какой именно элемент попадет в переменную removed_item? Помните, что индексация в Python начинается с нуля.

Выберите правильный вариант ответа
colors = ['Red', 'Green', 'Blue', 'Yellow']
removed_item = colors.pop(1)
print(removed_item)
Сообщения
Проверить
Показать подсказку

Обработка очереди заявок

id: 40006_task_build_pop_logic

Соберите код, который обрабатывает первую заявку в очереди. Вам нужно объявить список, извлечь из него **первый** элемент (по принципу очереди FIFO) и вывести его на экран. Будьте внимательны с индексами и методами.

Перетяните в правильном порядке строки из одного блока в другой
requests = ['req_101', 'req_102', 'req_103']
current = requests.pop(0)
print(f"Processing: {current}")
current = requests.pop()
current = requests.clear()
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Очистка корзины покупок

id: 40006_task_replace_clear

Пользователь нажал кнопку "Очистить корзину". Допишите код, используя метод, который удаляет **все** элементы из списка разом, не возвращая их.

Заполните пропуски
cart = ['Apple', 'Banana', 'Milk']
print(f"Items before: {len(cart)}")

# Очищаем список полностью
cart.input1S

print(f"Items after: {len(cart)}")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Что возвращают методы?

id: 40006_task_bank_return_values

Расставьте вызовы методов так, чтобы переменная val1 получила удаленный элемент (число), а переменная val2 получила None (так как метод ничего не возвращает).

Нужно правильно расставить в пропуски предложенные варианты
numbers = [10, 20, 30, 40]
more_numbers = [1, 2, 3]

# Должен сохраниться элемент 40
val1 = numbers.input1S

# Должно сохраниться None, а список more_numbers стать пустым
val2 = more_numbers.input2S
pop()
clear()
remove(40)
pop(0)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Ошибка в аргументах метода clear

id: 40006_task_error_clear_args

Программист хотел очистить список, но по привычке попытался передать индекс в метод, который не принимает аргументов. Найдите и исправьте строку с ошибкой, чтобы список стал пустым.

Найдите ошибку и исправьте
data = [5.5, 2.4, 9.1]
# Очищаем данные
data.clear(0)
print(data)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Классификация: Изменяет список и возвращает значение?

id: 40006_task_sort_behavior

Распределите выражения Python по двум категориям. В первую — те, которые удаляют элемент и **возвращают его** (можно присвоить переменной). Во вторую — те, которые только удаляют (или очищают) и **возвращают None**.

Перетяните элементы в соответствующие блоки
Возвращает элемент
Возвращает None
lst.pop()
lst.clear()
lst.pop(0)
lst.append(5)
lst.pop(-1)
Сообщения
Проверить
Показать подсказку

Перемещение элементов между списками

id: 40006_task_sequencing_stack

Восстановите логику перемещения данных. Задача: взять последний элемент из списка source и добавить его в список target. Затем вывести target.

Расставьте строки в правильном порядке
target.append(item)
source = [1, 2, 3]
print(target)
item = source.pop()
target = []
Сообщения
Проверить
Показать подсказку

Математика с pop()

id: 40006_task_give_result_calc

Что выведет этот код? Мы извлекаем два элемента из списка и складываем их. Введите получившееся число.

Что должно получиться?
nums = [2, 5, 10]
a = nums.pop()
b = nums.pop()
print(a + b)
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру