說到程式語言python,有一個著名的格言"餘生太短,只用python"。如果要分析為什麼會存在這麼一句格言?python的語法並不簡單,有複雜難懂的部分,之所以有這樣一句格言,是因為python中有很多強大的模塊,就像一個武器庫。
Python正式由於這些模塊的出現,只要引入這個模塊,調用這個模塊的集成函數,問題迎刃而解;不需要從頭開始,節省了大量的時間。
Python中有這樣一個模塊sympy模塊,可以進行符號計算,可以定義符號變量,進行代數運算,以及微分運算、積分運算等。
由於sympy模塊是第三方模塊,因此需要安裝。安裝過程也比較簡單,在windows命令行窗口中,輸入"pip install sympy",點擊enter鍵,就可以安裝最新版本的sympy模塊。
使用這個模塊在python的編譯環境中輸入"from sympy import *",就可以使用這個模塊了。
使用函數symbols()創建符號變量,使用函數simplify()化簡一般代數式,使用函數trigsimp()化簡含有三角函數的代數式,使用函數powsimp()化簡含有指數的代數式。
如果創建的代數式是u,可以使用函數u.subs()對代數式進行換元,如果是多個換元,可以使用u.subs([(x,a),(y,b)])將代數式中的x換元成a,將代數式中的y換元成b。
如果創建的代數式是u,可以使用函數u.subs()對代數式進行賦值,如果是多個變量可以使用函數u.subs([(x,1),(y,2)])將代數式中x賦值1,y賦值2。
使用函數together()將代數式中的各個項進行合併。
使用函數apart()將代數式中項進行展開,
使用函數series(u,x)將代數式u使用自變量x進行展開。
使用函數limit(u,x,n)求代數式u當x->n時,代數式u的極限。
使用函數diff(u,x,n)求代數式u的n階微分,如果參數中不寫n,表示求代數式的一階微分。
使用函數integrage(u,x)求代數式u的不定積分,使用函數integrate(u,(x,n1,n2))求代數式u的自變量x從n1到n2的不定積分。
使用函數solve(u,x)求解線性方程,使用函數solve([u,v],[x,y])求解線性方程組。
使用函數dsolve(eq,f(x))可以求解一階微分方程,解微分方程之前,需要使用函數Function()創建此函數。
同樣也可以使用函數dsolve()來解高階微分方程,此處使用g(x).diff(x,n)表示對代數式g(x)的n階微分。
(該文章為原創,抄襲必究)