list = ['02', '03', '04', '05', '06', 'Inactive', 'Inactive', 'Inactive', 'Inactive', 'Inactive']
list.remove('Inactive')
print list
但它只是保持结果不变。我错过了什么?
list = ['02', '03', '04', '05', '06', 'Inactive', 'Inactive', 'Inactive', 'Inactive', 'Inactive']
list.remove('Inactive')
print list
但它只是保持结果不变。我错过了什么?
Inactive
正如listremove
方法的文档所说,它删除了第一次出现的。要删除所有出现,请使用循环/方法/lambda/LC。例如:
myList = ['02', '03', '04', '05', '06', 'Inactive', 'Inactive', 'Inactive', 'Inactive', 'Inactive']
removedList = [x for x in myList if x!='Inactive'] # original list unchanged
# or
removedList = filter(lambda x: x!='Inactive', myList) #leaves original list intact
顺便说一句,不要list
用作变量名
>>> list = ['02', '03', '04', '05', '06', 'Inactive', 'Inactive', 'Inactive', 'Inactive', 'Inactive']
>>> list.remove('Inactive')
>>> print list
['02', '03', '04', '05', '06', 'Inactive', 'Inactive', 'Inactive', 'Inactive']
它为我删除了一个'Inactive'
。
for position, item in enumerate(list):
list.remove('Inactive')
这将解决问题。