feat: indexifier now has len
This commit is contained in:
parent
7beca501bf
commit
d962ecb11e
@ -36,6 +36,10 @@ class Indexifier:
|
||||
def indexify(self, n: int) -> typing.Dict[str, typing.Any]:
|
||||
return self.product_dict[n]
|
||||
|
||||
def __len__(self) -> int:
|
||||
weights = [len(v) for v in self.dict.values()]
|
||||
return math.prod(weights)
|
||||
|
||||
def _indexify_indices(self, n: int) -> typing.Sequence[int]:
|
||||
"""
|
||||
legacy indexify from old scripts, copypast.
|
||||
|
@ -10,3 +10,12 @@ def test_indexifier():
|
||||
_logger.debug(f"setting up indexifier {indexifier}")
|
||||
assert indexifier.indexify(0) == {"key_1": 1, "key_2": "a"}
|
||||
assert indexifier.indexify(5) == {"key_1": 2, "key_2": "c"}
|
||||
assert len(indexifier) == 9
|
||||
|
||||
|
||||
def test_indexifier_length_short():
|
||||
weight_dict = {"key_1": [1, 2, 3], "key_2": ["b", "c"]}
|
||||
indexifier = deepdog.indexify.Indexifier(weight_dict)
|
||||
_logger.debug(f"setting up indexifier {indexifier}")
|
||||
|
||||
assert len(indexifier) == 6
|
||||
|
Loading…
x
Reference in New Issue
Block a user