Reference
unique(values, *, key=lambda v: v)
#
Keep only the first occurrences while maintaining original order.
The equality check used for deduplication can be overridden using the key argument.
Examples:
>>> unique([1, 1, 5, 3, 3])
[1, 5, 3]
>>> unique([{'a': 1, 'b': 2}, {'a': 1, 'b': 3}], key=lambda v: v['a'])
[{'a': 1, 'b': 2}]
>>> unique([{'a': 1, 'b': 2}, {'a': 1, 'b': 3}], key=lambda v: v['b'])
[{'a': 1, 'b': 2}, {'a': 1, 'b': 3}]
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
values |
Iterable[T]
|
An iterable containing your values |
required |
key |
Callable[[T], Any]
|
Override the identity function of the equality check. |
lambda v: v
|
Returns:
| Type | Description |
|---|---|
List[T]
|
A deduplicated list. |
Source code in great_ai/utilities/unique.py
Last update:
July 8, 2022