replacement for itertools.groupby
(
iter: list[T],
key: Callable[[T], K],
)
| 725 | |
| 726 | |
| 727 | def groupby_defaultdict( |
| 728 | iter: list[T], |
| 729 | key: Callable[[T], K], |
| 730 | ) -> Iterator[tuple[K, Iterator[T]]]: |
| 731 | """replacement for itertools.groupby""" |
| 732 | idx = defaultdict(list) |
| 733 | for i, obj in enumerate(iter): |
| 734 | idx[key(obj)].append(i) |
| 735 | for k, ix in idx.items(): |
| 736 | yield k, (iter[i] for i in ix) |
| 737 | |
| 738 | |
| 739 | def _combine_single_variable_hypercube( |
no test coverage detected
searching dependent graphs…