Пусть x = [10, 20, 30]. После выполнения del x[1] каким станет список и что произойдёт с переменной x?

AСписок станет [10, 30], обращение к x после этого вызовет ошибку NameError
BСписок станет [10, 30], переменная x ссылается на тот же изменённый список
CСписок станет [10, 30], переменная x будет равна None после удаления элемента
DОбе строки вызовут ошибку TypeError: del работает только с самой переменной
Правильный ответ. Оператор del по индексу удаляет элемент из списка, сама переменная при этом сохраняется.

Разбор

Инструкция del x[1] удаляет элемент с индексом 1 (значение 20) из списка. Список меняется на месте и становится [10, 30], а переменная x продолжает ссылаться на тот же объект. Если бы мы написали del x, удалилась бы сама переменная, и обращение к x после этого вызвало бы NameError. Значение None сюда не приходит — del ничего не присваивает, а просто удаляет элемент.

Проверь себя · 1/3разбор после ответа
Что будет в переменной цикла на каждой итерации for x in enumerate(["a", "b", "c"])?
Тренировать Python в Telegram

Ещё вопросы по теме «Синтаксис и типы данных»