2017-09-10 4 views
1

Wie kann ich Sympy sagen, x/2 als 1/2 x zum Beispiel zu drucken? I.e. einen Bruchteil wie 1 über den Nenner mal den Zähler drucken?Drucken x/2 als 1/2 x in Sympy

+0

gibt es einen bestimmten Grund dafür? Sie sind immerhin gleichwertig. – notcompletelyrational

+0

@notcompletylerational Ich mag nur das Aussehen mehr, und sympy hat eine Menge Funktionalität, um zwischen äquivalenten Ausdrücken zu konvertieren. – user2132672

+0

Welchen Drucker benutzen Sie? Der "Latex" -Drucker hat einige Flags, um das Drucken von Brüchen zu steuern, aber die anderen nicht (Sie müssten den Drucker ableiten, um sie zu ändern). – asmeurer

Antwort

0

Um dies richtig zu tun, müssten Sie Ihren eigenen Drucker schreiben, glaube ich. Um dies hackisch zu tun, könnten Sie versuchen:

mul = x/2 
a, b = mul.as_two_terms() 
if a.is_Rational and not a.is_Integer: 
    print (Mul(Symbol(str(a.p))/a.q, b, evaluate=False)) 
else: 
    print (mul)