Remove all occurrences of a value from a list?

后端 未结 23 1915
佛祖请我去吃肉
佛祖请我去吃肉 2020-11-21 23:45

In Python remove() will remove the first occurrence of value in a list.

How to remove all occurrences of a value from a list?

This is w

23条回答
  •  别跟我提以往
    2020-11-22 00:05

    At the cost of readability, I think this version is slightly faster as it doesn't force the while to reexamine the list, thus doing exactly the same work remove has to do anyway:

    x = [1, 2, 3, 4, 2, 2, 3]
    def remove_values_from_list(the_list, val):
        for i in range(the_list.count(val)):
            the_list.remove(val)
    
    remove_values_from_list(x, 2)
    
    print(x)
    

提交回复
热议问题