Are all items in list the same?
MRAB
python at mrabarnett.plus.com
Mon Jan 7 20:45:51 EST 2019
On 2019-01-08 00:47, ike at koeln.ccc.de wrote:
> You might do something like
>
> if len(a) == 0 or all(i == a[0] for i in a[1:]):
>
You don't need to check the length of the list because if the list is
empty, 'all' will return True anyway.
> This should be linear complexity and short circuiting and in general it
> doesn't get much better than this. Though I wouldn't bet there isn't a
> better (faster/clearer/more readable) solution.
>
> On Mon, Jan 07, 2019 at 05:14:14PM -0700, Bob van der Poel wrote:
>> I need to see if all the items in my list are the same. I was using set()
>> for this, but that doesn't work if items are themselves lists. So, assuming
>> that a is a list of some things, the best I've been able to come up with it:
>>
>> if a.count( targ ) == len(a):
>>
>> I'm somewhat afraid that this won't scale all that well. Am I missing
>> something?
>
More information about the Python-list
mailing list