我具有由sympy計算的表達式:如何用sympy表達式中的有理數替換浮點數?
sqrt(pi)*(0.333333333333333*a + 0.333333333333333*b - 2.66666666666667*c**2)
其中a,b,c是符號,並想解析它使得浮標有理數替換像
sqrt(pi)*(1/3*a + 1/3*b - 8/3*c**2)
我知道該怎麼做一個手工,
In[24] Rational(str(0.333333333333333)).limit_denominator(1000)
Out[24]: 1/3
但不太知道如何去解析原子和採摘只有那些花車的,,替代回到有理數近似值。
在表達式中做這些替換的最明智的方法是什麼?
謝謝asmeurer,簡單得多。我已經接受你的答案。 – acortis