diff --git a/py-polars/polars/series/series.py b/py-polars/polars/series/series.py index f532de9011b4..506c52ed9f7a 100644 --- a/py-polars/polars/series/series.py +++ b/py-polars/polars/series/series.py @@ -1019,11 +1019,8 @@ def _arithmetic(self, other: Any, op_s: str, op_ffi: str) -> Self: else: return self._from_pyseries(getattr(self._s, op_s)(_s)) else: - dtype = self.dtype - while hasattr(dtype, "inner"): - dtype = dtype.inner - other = maybe_cast(other, dtype) - f = get_ffi_func(op_ffi, dtype, self._s) + other = maybe_cast(other, self.dtype) + f = get_ffi_func(op_ffi, self.dtype, self._s) if f is None: msg = ( f"cannot do arithmetic with Series of dtype: {self.dtype!r} and argument"