Шесть операций подряд
Дополните приведённый код так, чтобы он по очереди выполнил шесть действий, печатая результат каждого:
- заменил второй элемент списка на 17;
- добавил числа 4, 5 и 6 в конец;
- удалил первый элемент;
- удвоил список;
- вставил число 25 по индексу 3;
- вывел получившийся список.
Код
numbers = [8, 9, 10, 11]- Формат выходных данных
- Шесть строк.
[8, 17, 10, 11]
[8, 17, 10, 11, 4, 5, 6]
[17, 10, 11, 4, 5, 6]
[17, 10, 11, 4, 5, 6, 17, 10, 11, 4, 5, 6]
[17, 10, 11, 25, 4, 5, 6, 17, 10, 11, 4, 5, 6]
[17, 10, 11, 25, 4, 5, 6, 17, 10, 11, 4, 5, 6]Подсказка 1
«Второй элемент» — это индекс 1: нумерация с нуля.
Подсказка 2
Добавить сразу три числа умеет extend(), а удвоить список — умножение на 2.
Разбор
numbers[1] = 17— замена по индексу.numbers.extend([4, 5, 6])— добавление трёх элементов.del numbers[0]— удаление первого.numbers *= 2— удвоение.numbers.insert(3, 25)— вставка по индексу.
Решение
numbers = [8, 9, 10, 11]
numbers[1] = 17 # второй элемент — это индекс 1
print(numbers)
numbers.extend([4, 5, 6]) # добавляем сразу три числа
print(numbers)
del numbers[0]
print(numbers)
numbers *= 2 # то же, что numbers = numbers * 2
print(numbers)
numbers.insert(3, 25) # вставка сдвигает остальные вправо
print(numbers)
print(numbers)Каждая операция меняет сам список, поэтому следующая работает уже с новым содержимым. Отсюда и разница между «вторым элементом» в начале и в конце: список успел перестроиться дважды.


