From 2d48c222db8a2c9e17d2ffda9f8c8716588476ee Mon Sep 17 00:00:00 2001 From: Daniel Weindl Date: Fri, 31 Oct 2025 22:59:53 +0100 Subject: [PATCH] Add `v2.Problem.__repr__` Add `v2.Problem.__repr__`, and include ID and all models in `__str__`. --- petab/v2/core.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/petab/v2/core.py b/petab/v2/core.py index 5e8c59d0..fe2510f2 100644 --- a/petab/v2/core.py +++ b/petab/v2/core.py @@ -1138,8 +1138,13 @@ def __init__( self.mapping_tables = mapping_tables or [MappingTable()] self.parameter_tables = parameter_tables or [ParameterTable()] + def __repr__(self): + return f"<{self.__class__.__name__} id={self.id!r}>" + def __str__(self): - model = f"with model ({self.model})" if self.model else "without model" + pid = repr(self.id) if self.id else "without ID" + + model = f"with models {self.models}" if self.model else "without model" ne = len(self.experiments) experiments = f"{ne} experiments" @@ -1157,7 +1162,7 @@ def __str__(self): parameters = f"{nest} estimated parameters" return ( - f"PEtab Problem {model}, {conditions}, {experiments}, " + f"PEtab Problem {pid} {model}, {conditions}, {experiments}, " f"{observables}, {measurements}, {parameters}" )