【发布时间】:2019-09-28 05:50:44
【问题描述】:
我正在尝试从列表中删除特定值的所有实例,然后将剩余的列表项向下移动。该代码在某些情况下有效,但在其他情况下无效。例如:
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
【问题讨论】:
标签: python python-3.x list list-comprehension