From 45a77b7012b63f082af062fe7f028f96d3f10e89 Mon Sep 17 00:00:00 2001 From: Aaron Wolen Date: Thu, 3 Oct 2024 12:49:23 -0500 Subject: [PATCH] Fix named level retrieval from multiscaleimage (#3119) --- apis/python/src/tiledbsoma/_multiscale_image.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/apis/python/src/tiledbsoma/_multiscale_image.py b/apis/python/src/tiledbsoma/_multiscale_image.py index 01ad3a64a7..49dc8c3bb7 100644 --- a/apis/python/src/tiledbsoma/_multiscale_image.py +++ b/apis/python/src/tiledbsoma/_multiscale_image.py @@ -508,18 +508,20 @@ def coordinate_space(self, value: CoordinateSpace) -> None: self._coord_space = value def get_transform_from_level(self, level: Union[int, str]) -> ScaleTransform: - """Returns the transformation from user requested level to image reference + """Returns the transformation from user requested level to the image reference level. Lifecycle: Experimental. """ if isinstance(level, str): + level_props = None for val in self._levels: if val.name == level: level_props = val - else: - raise KeyError(f"No level with name '{level}'") + break + else: + raise KeyError("No level with name '{level}'") else: level_props = self._levels[level] ref_level_props = self._schema.reference_level_properties @@ -551,11 +553,13 @@ def get_transform_to_level(self, level: Union[int, str]) -> ScaleTransform: Experimental. """ if isinstance(level, str): + level_props = None for val in self._levels: if val.name == level: level_props = val - else: - raise KeyError(f"No level with name '{level}'") + break + else: + raise KeyError("No level with name '{level}'") else: level_props = self._levels[level] ref_level_props = self._schema.reference_level_properties