Skip to content

Get Unique Elements from List

Zero-dependency Python snippets for extracting unique elements from a list using the standard library.

3 snippets available in this sub-category.


Simple

Unique elements with set

set unique list duplicates data-structures

Remove duplicates from a list using set

numbers = [1, 2, 2, 3, 4, 4, 5]
unique = list(set(numbers))
print(unique)  # [1, 2, 3, 4, 5] (order not guaranteed)

Notes

  • set() removes duplicates but does not preserve order
  • Convert back to list if needed

Unique elements preserving order (Python 3.7+)

set unique order list data-structures

Remove duplicates while preserving order

def unique_preserve_order(lst):
    seen = set()
    return [x for x in lst if not (x in seen or seen.add(x))]


numbers = [1, 2, 2, 3, 4, 4, 5]
unique = unique_preserve_order(numbers)
print(unique)  # [1, 2, 3, 4, 5]

Notes

  • Uses set for fast membership test
  • Preserves first occurrence order

Complex

Unique elements by key

set unique key custom data-structures

Remove duplicates by custom key function

def unique_by_key(lst, key_func):
    seen = set()
    result = []
    for item in lst:
        key = key_func(item)
        if key not in seen:
            seen.add(key)
            result.append(item)
    return result


# Example: unique by string length
words = ["a", "bb", "ccc", "dd", "eee", "f"]
unique = unique_by_key(words, len)
print(unique)  # ['a', 'bb', 'ccc']

Notes

  • Useful for lists of dicts or objects
  • Customizable uniqueness criteria

🔗 Cross Reference

🏷️ Tags

set, unique, duplicates, order, key, data-structures

📝 Notes

  • Use set() for fast deduplication
  • Use custom logic to preserve order or uniqueness by key