degreeに対応する三角関数をラムダ式で定義

EXCELでもプログラミング言語でも三角関数に使用する角度単位はラジアンなので、度分秒を使用したいときは(π/180)を乗じたりradians()関数で変換する必要がありますが、頻度が多いと式が長くて見づらくなります。

Pythonも例外ではなくラジアン単位に変換する必要があるのですが、あらかじめ度分秒単位に変換するラムダ式を定義しておくことにより、三角関数の引数を度分秒の数値のみとすることが出来ます。

# degreeに対応する三角関数をラムダ式で定義
from math import *
sind = lambda x : sin(radians(x))
cosd = lambda x : cos(radians(x))
tand = lambda x : tan(radians(x))
asind = lambda y : degrees(asin(y))
acosd = lambda y : degrees(acos(y))
atand = lambda y : degrees(atan(y))

以上のようにラムダ式を定義しておけば、毎回単位変換させる必要はなく、例えばtand(45)と記述すれば1という解が得られるようになります。

Follow me!