Search code examples
pythonalgorithmlistunique

Checking if all elements in a list are unique


What is the best way (best as in the conventional way) of checking whether all elements in a list are unique?

My current approach using a Counter is:

>>> x = [1, 1, 1, 2, 3, 4, 5, 6, 2]
>>> counter = Counter(x)
>>> for values in counter.itervalues():
        if values > 1: 
            # do something

Can I do better?


Solution

  • Not the most efficient, but straight forward and concise:

    if len(x) > len(set(x)):
       pass # do something
    

    Probably won't make much of a difference for short lists.