FishHook
l = [0, 1, 2, 3, 4, 5, 6, 7, 8]
k = 3
for index in range(k, len(l)-1):
l[index] = l[index+1]
l.pop()
print(l)
Вот ваше решение, оно реализуется один в один также как ставится задача, вообще не нужно фантазии.
Я тщательно изучил Ваше решение. Спасибо за уделенное время.
Но в тоже время с Вами не соглашусь, ибо считаю, что оба решение как и мое, так и Ваше соответсвует условию, но работает по-разному.
Ваше решение на выходе возвращает:
[0, 1, 2, 4, 4, 5, 6, 7, 8]
[0, 1, 2, 4, 5, 5, 6, 7, 8]
[0, 1, 2, 4, 5, 6, 6, 7, 8]
[0, 1, 2, 4, 5, 6, 7, 7, 8]
[0, 1, 2, 4, 5, 6, 7, 8, 8]
[0, 1, 2, 4, 5, 6, 7, 8]
И, собственно, удаляет элемент, который не соответсвует индексу k. В вашем случает индексу k соответствует 4, а удаляет он последний элемент, который равен 8.
Мой же код пошагово передвигает k-й элемент по списку и в конечном итоге его же и удаляет.
l = []
while len(l) != 10:
n = int(input("Введите 10 элементов списка = "))
l.append(n)
print(l)
k = int(input("Индекс элемента, который будет удален = "))
for a in range(k, len(l) - 1):
l[a], l[a + 1] = l[a + 1], l[a]
print(l)
print("Удаленный элемент = ", l.pop())
print("Конечный список:", l)