Unique Iteration
Links
API
Unique Iteration Utilities.
unique
- Unique Iteratoruniquetuple
- Create tuple with unique elementsuniquelist
- Create list with unique elements
- uniquer.unique(iterable, key=None)[source]
Iterate over iterable and ensure that every item is just returned once.
>>> iterator = unique([1, 3, 1, 3, 6, 3]) >>> next(iterator) 1 >>> next(iterator) 3 >>> next(iterator) 6 >>> next(iterator) Traceback (most recent call last): ... StopIteration
>>> iterator = unique([(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b'), (3, 'a')], key=lambda item: item[1]) >>> next(iterator) (5, 'a') >>> next(iterator) (2, 'b') >>> next(iterator) Traceback (most recent call last): ... StopIteration
- uniquer.uniquelist(iterable, key=None)[source]
Return unique list.
>>> uniquelist([1, 5, 2, 3, 3, 6, 7, 2, 3]) [1, 5, 2, 3, 6, 7]
The
key
callback allows to refine the duplicate detection:>>> uniquelist([(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b'), (3, 'a')]) [(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b')] >>> uniquelist([(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b'), (3, 'a')], key=lambda item: item[1]) [(5, 'a'), (2, 'b')]
- uniquer.uniquetuple(iterable, key=None)[source]
Return unique tuple.
>>> uniquetuple([1, 5, 2, 3, 3, 6, 7, 2, 3]) (1, 5, 2, 3, 6, 7)
The
key
callback allows to refine the duplicate detection:>>> uniquetuple([(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b'), (3, 'a')]) ((5, 'a'), (2, 'b'), (3, 'a'), (4, 'b')) >>> uniquetuple([(5, 'a'), (2, 'b'), (3, 'a'), (4, 'b'), (3, 'a')], key=lambda item: item[1]) ((5, 'a'), (2, 'b'))