
On 2021-12-22 01:53, Rob Cliffe via Python-ideas wrote:
Currently list.remove raises ValueError if the element is not in the list. When called with the count argument, should it raise ValueError if there are fewer than `count` occurrences of the element in the list?
There's str.replace and str.split that accept a maximum count, and functions and methods in the re module that accept a maximum count. Is there any place where such a count isn't treated as a maximum?
On 22/12/2021 00:09, Jeremiah Vivian wrote:
I expect some sort of "there's no benefit in this, just write the current implementation", indirectly or directly. Currently, this is the way to remove `num` occurrences of an element from a list:
idx = 0 while idx < len(the_list) and num: if the_list[idx] == element_to_remove: del the_list[idx] num -= 1 else: idx += 1 With a `count` argument to `list.remove`, this is how it would be done: the_list.remove(element_to_remove, count=num) (Doesn't necessarily have to be a keyword argument) Is this a good idea?
Speaking of which, is there a use case for a 'key' argument? Just wondering...