Question Details

No question body available.

Tags

python sympy

Answers (1)

March 11, 2026 Score: 3 Rep: 438 Quality: Low Completeness: 50%

Override just the UnevaluatedExpr printing rule:

from sympy import 
from sympy.printing.str import StrPrinter

class FixedStrPrinter(StrPrinter): def _print_UnevaluatedExpr(self, expr): return f"({self._print(expr.args[0])})"

def pprint_fixed(expr): return FixedStrPrinter().doprint(expr)

x, y = symbols('x y') ue1 = UnevaluatedExpr(-2
x2 + 3x + 2) ue2 = UnevaluatedExpr(-5x2 + 6x - 7)

print(pprint_fixed(ue1 + ue2))

(-2x2 + 3x + 2) + (-5x2 + 6*x - 7)