【Python】mathモジュールの便利な関数【基本講座】

【Python】mathモジュールの便利な関数【基本講座】

Pythonでは、mathモジュールと言って算術計算において便利なライブラリがあります。今回はそれを見ていきましょう。

出典:http://www.photo-ac.com/

mathモジュールの基本

mathモジュールの使い方

mathモジュールだけではなく、様々なモジュールを使うには、Pythonのソースコードの1行目に import と書く必要があります。

例:

1行目でimportするだけでなく、モジュールで定義されている関数は、3行目のように math.sqrt のように書くことで使うことができる。上記の動作は、numを平方根で表示しているプログラムです。

mathモジュールの便利な関数【丸暗記】

関数 説明
ceil(x) xの値以上の最小の整数を返す
floor(x) xの値以下の最大の整数を返す
exp(x) eのx乗を返す
log(x) xの自然対数を返す
pow(x, y) xのy乗を返す
sqrt(x) xの平方根を返す
sin(x) xのサインを返す
cos(x) xのコサインを返す
tan(x) xのタンジェントを返す
radian(x) 角度xをラジアンに変換して返す

ちょっとした問題を解いてみよう!

問題:
aにb とcを足して2で割った値の整数部をいれよ。(b,c >= 0とする)
例) b=2, c = 3 のとき a = 2になる。

いくつか回答が考えられるが4つほど思いつくだろうか?

解1は、商の部分だけ取得することを利用した解法です。
解2は、floor関数を利用した小数点以下切り捨てた解法です。
解3は、解2と同じような感じで整数部のみ表示する解法です。
解4は、ビット演算を利用した解法です。この中では一番高速に処理できます。しかし、3で割るときは使用できないというデメリットもあります。使い時を選ぶ解法です。

ceilとfloorのちょこっと話

ceilやfloorは頻出関数ではありますが、ただ単に丸暗記というのもしんどいことだと思います。
そこで、ここでは意味を理解してそれをフックに記憶と結び付けておけるように解説したいと思います。

ceil:天井という意味で、それ以上上がないので値を繰り上げると理解します。

floor:床という意味で下に行くので、小数点以下切り捨てになります。なお、ガウス記号と同じ振る舞いと覚えておくと良いです。

Pythonおすすめ書籍

最初の2冊は初心者向けです。Effectiv Pythonはこの2冊を終えてから読むとかなりわかりやすく感動できると思います。

基礎 Python (IMPRESS KISO SERIES)

新品価格
¥6,200から
(2020/4/21 20:50時点)

入門 Python 3

新品価格
¥4,070から
(2020/4/21 20:53時点)

Effective Python ?Pythonプログラムを改良する59項目

新品価格
¥3,520から
(2020/4/21 20:52時点)

独学に限界を感じていませんか?

プログラミング初学者がもっとも陥りやすいのは、挫折です。

なぜ?挫折するのでしょうか?

それは独学だけでは、限界があるからです。

でも、あきらめてはそこで終わりです。

プログラミング言語習得には、メンターと呼ばれる教えてくれる人間が必要です。メンターがいれば、挫折する確率がグンと低くなります。

困ったときに、いつでも教えてくれる先生がいれば心強いと思いませんか?

でも、先生って、学校行く時間もないし、、、そんなこと思っていませんか?
今は、Webでプログラミングが学べる時代なんですよ!

でも、お高いんでしょ?

うーん。これは考え方なのかもしれないんですが、例えば、こう考えてはどうでしょうか?
スクール代金が1コース20万円として、その後、ITエンジニアに就職したら、平均30万円以上は、稼げるのですぐに元が取れますよね?
この数値は、リクナビなど転職サイトを検索すればすぐ出てくる数値です。

今一時の出し渋りにより、一生の賃金を損することになるか、倍以上手に出来るかは、自明ですよね?

でも、どこが良いのかわからない。

そこで、厳選したプログラミングスクールと動画サイトをご紹介いたします。