分数+符号+Python3

Fractions+Symbols+Python3

我想在 Python3 中编写处理分数和符号的代码。

该代码应接受 2 个带符号的分数,进行一些基本算术(+ 和 *),并提供一个带符号的分数。举个例子:

(3x/10) + (2y/20) = (3x+y)/10

我可以让分数与 import fractions 一起使用,而符号与 import sympy 一起使用,但我无法让它们一起工作。我也没有完全在 sympy 中找到如何做到这一点。

您好, 日本

sympy uses fractions ( called Rationals 同情)自动:

from sympy import symbols, srepr

x, y = symbols('x y')

expr = (3*x/10) + (2*y/20) + (3*x+y)/10

print(expr)         # 3*x/5 + y/5
print(srepr(expr))  # Add(Mul(Rational(3, 5), Symbol('x')),
                    #     Mul(Rational(1, 5), Symbol('y')))

如果没有,3*x/5 将计算为 0.6*x