2016-04-12 26 views
1

Help!私はsympyを学習しており、sympy.latex関数に問題があります。私はsympy.latex関数が文字列を引数として取るようにしたいが、この場合は動作しない。 n + \frac{x}{y}sympy.latex関数のパラメータとして文字列を作成してください

が、私は

myString = 'n + x/y' 
print latex(myString) 

を書くときの出力は次のようになります:たとえば を、

from sympy import * 

x, y, n = symbols('x y n') 
print latex(n + x/y) 

出力があるn + x/y 私が見てみたいものの:n + \frac{x}{y}

は、私は何をすべき行う?

+1

'' latex''はSymPyオブジェクトAFAIKでのみ動作します。最初に文字列をsympyオブジェクトに変換する必要があります。簡単な解決策は '' latex(sympify( 'n + x/y')) ''でなければなりません。 –

+0

@Marshmallow完了: –

答えて

1

一般的に、一部のSymPy関数が入力として文字列を処理するという事実に頼るべきではありません。まず、文字列をSymPy式に変換する必要があります。sympifyです。

expr = sympify(myString) 
latex(expr) 
1

latexは、SymPyオブジェクトAFAIKでのみ動作します。最初に文字列をSymPyオブジェクトに変換する必要があります。簡単な解決策はlatex(sympify('n + x/y'))です。

関連する問題