2015-09-15 160 views
1

轉換分數有沒有辦法寫在這個格式的字符串轉換: str = "9+3/3+6/2"使用數字到使用字符串\壓裂{} {}乳膠格式

要乳膠字符串,看起來像這樣: "9 + \frac{3}{3} + \frac{6}{2}"

由於sympy.latex(str)返回原始字符串,如果我通過sympy.latex(9+3/3+6/2),則返回評估值13。

回答

2

可以使用參數評估=假在創建SymPy對象,這防止從被評估的表達式:

In [1]: expr = sympify("9+3/3+6/2", evaluate=False) 

In [2]: expr 
Out[2]: 
3 6  
- + - + 9 
3 2  

In [3]: latex(expr) 
Out[3]: '\\frac{3}{3} + \\frac{6}{2} + 9' 

In [4]: print (latex(expr)) 
\frac{3}{3} + \frac{6}{2} + 9 
+0

我發現了一個類似的解決方案在這裏http://stackoverflow.com/ question/28543995/using-sympys-latex-function-without-calculate-the-input這也是有幫助的。謝謝。 –