2013-03-20 87 views
2

當前在SymPy中打印方程時,它只打印等式的「右手邊」,不包含「左手邊」。例如。iPython筆記本中的Sympy:打印整個函數

>>> a = b*d 
>>> a 
b*d 

而我想的是:

>>> a = b*d 
>>> a 
a = b*d 

對於其中的這個大的一部分是很好的格式是mathjax給予,更有點可讀性當我展示給誰同事AREN程序員。有沒有辦法在輸出中包含方程的主題?

N.B.道歉,我的數學術語不是很好

回答

5

Python不能這樣工作。 Python中的變量只是標籤。

SymPy是一個Python庫,不是圍繞Python包裝的東西,因此它符合語言的語法和語義。當您編寫a=b時,您正在創建一個標籤a,該標籤指向標籤b指向的同一個對象(基於SymPy或不基於)。有關更多信息,請查看變量如何在Python中工作。

當您創建SymPy表達式時,您將從類Symbol的對象實例開始並建立。 Symbol構造函數的參數是主要用於打印的名稱。您可以編寫a = b = c = Symbol('fancy_name'),並且所有三個標籤都將指向同一個對象:Symbol('fancy_name')實例。檢查Sympy文檔中的教程。

大多數時候您使用SymPy表達式而不是函數。作爲初學者,你不需要關心功能。

最後,如果由於某種原因,你想擁有等式或不等式的表達(大多數時間你不需要這個),你可以用

>>> relational.Eq(x, y) 
x=y 
+0

創建它們的關係類就是我一直在尋找, 謝謝。 – mrmagooey 2013-03-20 02:02:20