Я пытаюсь удалить все экземпляры определенного значения из списка, а затем сдвинуть оставшиеся элементы списка вниз.Код работает в некоторых случаях, но не в других.Например:
print(myremove([7, 'B', 1, 8, 3, 'B'], 6, 'B')) # Gets what I want
print(myremove(['C', 'C', 7, 'C', 4, 'C'], 6, 'C')) # Does not
Одна из вещей, которые я хочу сделать, это удалить все экземпляры элемента и затем переместить все оставшиеся элементы вниз.
def myremove(mylist, elements, item):
for i in range(elements):
if mylist[i] == item:
mylist[i] = None
elements-= 1
for i in range(elements):
if mylist[i] is None:
for j in range(i, elements):
mylist[j] = mylist[j + 1]
mylist[elements] = None
return mylist