area = parse_vladmodels_spec("vladmodels katya y117 47 154").area_mm2 print(area) # → 7238
brand, name, code, width_str, height_str = tokens vladmodels katya y117 47 154
def parse_vladmodels_spec(spec: str) -> VladModel: """ Parse a *VladModels* specification string and return a :class:`VladModel`. area = parse_vladmodels_spec("vladmodels katya y117 47 154")
try: width = int(width_str) height = int(height_str) except ValueError as exc: raise ValueError( f"Width and height must be integer numbers; got 'width_str' and 'height_str'" ) from exc str: return (f"<
def __repr__(self) -> str: return (f"<VladModel self.brand/self.name " f"code=self.code size=self.width_mm×self.height_mm mm " f"area=self.area_mm2:, mm²>")
if len(tokens) != 5: raise ValueError( f"Expected 5 whitespace‑separated parts, got len(tokens): tokens" )
Expected format (case‑insensitive): "<brand> <name> <code> <width> <height>" Example: "vladmodels katya y117 47 154"