當你的數據分析過程或演算法程式碼中充斥著數學計算和復雜公式時,是否曾感到頭昏腦脹,難以理清計算過程?難道你不曾夢想過一種方法,能夠讓這些計算過程變得清晰易懂,甚至近乎魔法般簡單?幸運的是,這樣的神奇工具已經出現了——它就是Handcalcs。Handcalcs是一個令人驚嘆的Python庫,它不僅能夠讓數值計算過程變得清晰可視,而且還能讓你輕松理解和解釋這些復雜的計算。讓我們一起揭開Handcalcs的神秘面紗,探索如何用它讓Python計算過程變得更加清晰。
Handcalcs 是什麽
Handcalcs 是一個非常實用的 Python 庫,它能夠讓數值計算過程更加清晰易懂。該庫適用於科學/工程計算、教育/教學以及數據分析等多個領域,有助於開發者更好地理解和解釋計算過程。
我們看一下簡單的範例:
import handcalcs.renderfrom math import sqrt, pi
%%rendera=3b=-10c=2x = -b + sqrt(b**2 - 4*a*c)/(2*a)
安裝handcalcs
pip install handcalcs
基本用法1:魔法指令渲染和轉化LaTex(%%render、%%tex)
handcalcs 可以作為 Jupyter Notebook 或 Jupyter Lab 或SmartNotebook中的單元格魔法指令使用。 %%render 魔法指令渲染成公式展示輸出;而%%tex 魔法指令將運算式轉換LaTex 公式表達。
首先,匯入該模組並執行單元格:
import handcalcs.renderfrom math import sqrt, pi
使用 %%reader 的範例:
%%rendera = 2b = 3c = 2*a + b/3
使用 %%tex 的範例:
%%texa = 2 / 3 * sqrt(pi)
基本用法2:裝飾器的方式使用,@handcalc()
匯入 @handcalc() 裝飾器:
from handcalcs.decorator import handcalc
具體的裝飾器參照上圖的說明。下面一個範例:
@handcalc(jupyter_display=True)def my_calc(x :float,y:float,z:float): a=2*x b=3*a/z+sqrt(a+y/2) c=a+b return cresult=my_calc(2.3,3.2,1.2)print(result)
符號數學計算sympy的支持
Sympy允許對代數運算式進行符號操作、求解和積分。如果您需要處理Sympy運算式或方程式以進行計算,請使用handcalcs來處理您的結果運算式替換和計算。
import sympy as spimport handcalcs.rendera,b,c=sp.symbols("a b c")d= a**2 +b*af= sp.integrate(d,a)f
%%render sympya=5b=10x=f
下標(Subscripts)支持
當在變量名中使用底線(_)時,變量名中的下標會自動生成。對於每個在系列中使用的單獨底線,都會巢狀生成子下標。
%%rendera_1=10x_i=200
更為詳細的幫助參考官方文件:https://github.com/connorferster/handcalcs
Handcalcs 的特征和套用場景:
主要特征如下
套用場景如下:
Handcalcs 是一款非常實用的 Python 庫,能夠讓數值計算過程更加清晰易懂。該庫適用於科學和工程計算、教育和教學、以及數據分析等多個領域,有助於開發者更好地理解和解釋計算過程。