Pythonのプログラムの中で、数値の計算を行う方法について書いています。
算術演算子が何かを簡単に解説して、実際のプログラムを載せて解説します。
載せているコードについては、Pythonの3.9.12
バージョンを使って検証しました。
算術演算子とは
算術演算子はプログラムの中で、四則演算をするための演算子です。
使うことで、足し算・引き算・割り算・掛け算などを行うことができます。
実際にどのように使うか見ていきましょう。
Pythonで計算する(四則演算)
Pythonでいろいろな演算子を使って、計算するプログラムを書いてみます。
足し算(加算)をする
足し算からやってみます。
足し算をするときには+
の演算子を使います。
value = 10 + 20
print(value) # 30が出力される
10と20を足した結果をvalue変数に格納しています。
出力すると「30」になりました。
引き算(減算)をする
引き算をするときには-
の演算子を使います。
value = 33 - 10
print(value) # 23が出力される
33から10を引いた結果をvalue変数に格納しています。
出力すると「23」になりました。
掛け算(乗算)をする
掛け算をするときには*
の演算子を使います。
value = 22 * 5
print(value) # 110が出力される
22と5を掛けた結果をvalue変数に格納しています。
出力すると「110」になりました。
割り算(除算)をする
割り算をするときには/
の演算子を使います。
value = 150 / 5
print(value) # 30.0が出力される
150から5を割った結果をvalue変数に格納しています。
出力すると「30.0」になりました。
このように割り算をすると、float型になって小数まで出力されます。
(※ちなみにPythonのバージョン2で確認すると、30になっています。)
切り捨て除算をする
割り算をするときに小数を切り捨てることも可能です。
切り捨てて除算する場合は、下記のように//
の演算子を使います。
value = 150 // 8
print(value) # 18が出力される
150を割る8で割ると、18.75が通常は出力されます。
今回は//
の演算子を使うことで、少数以下は切り捨てられました。
データもint形になります。
余りを求めるには
余りを出したい場合には%
の演算子を使用します。
value = 8 % 3
print(value) # 2が出力される
8を3で割った余りをvalue変数に格納しました。
結果として「2」が出力されます。
偶数・奇数を判定する
個人的には%
の演算子は偶数・奇数を判定するときによく使います。
value = 100 % 2
result = '偶数' if value == 0 else '奇数'
print(result) # 偶数が出力される
value = 77 % 2
result = '偶数' if value == 0 else '奇数'
print(result) # 奇数が出力される
上記では、最初に100を2で割った余りを求めています。余りは0です。
次の行で、三項演算子で偶数の場合は「偶数
」文字列、奇数の場合は「奇数
」という文字列をresult変数に設定しています。
ここでは偶数なので、結果として「偶数」が出力されます。
次に77を2で割ると、余りが1です。
同じように三項演算子を使って、result変数に値を設定しています。
結果として「奇数」が出力されます。
べき乗をする
**
の演算子を使用して、べき乗の計算を行うことも可能です。
value = 2**4
print(value) # 16が出力される
「2**4」とすることで、2の4乗になります。
結果として16が出力されます。
演算子の優先順位について
基本的には左から右に計算されていきますが、演算子にはそれぞれ優先順位があります。
今回使用した演算子と、よく使う丸括弧を含めると、下記のような形になります。
(※ビット演算など他にも演算子はあります)
順位 | 演算子 | 内容 |
---|---|---|
1 | () | 丸括弧 |
2 | ** | べき乗 |
3 | *, /, //, % | 乗算, 除算, 切り捨て除算, 余り |
4 | +, – | 加算, 減算 |
同じ優先順位のものは、左から右に計算されます。
優先順位を高めたい場合は、丸括弧を使用して、くくってあげると良いです。
例えば、下記のように計算します。
value = 2 + 3 * 4 - 10
print(value) # 4が出力される
左から順番に計算すると10になりますが、優先順位があるため乗算から行って、4となります。
優先順位を変えて、10が出力されるようにするには、下記のように丸括弧を使います。
value = (2 + 3) * 4 - 10
print(value) # 10が出力される
算術演算子のまとめ
今回使った演算子をまとめると、下記のようになります。
演算子 | 内容 | 例 |
---|---|---|
+ | 足し算(加算) | 8 = 5 + 3 |
– | 引き算(減算) | 3 = 10 – 7 |
* | 掛け算(乗算) | 16 = 2 * 8 |
/ | 割り算(除算) | 18.75 = 150 / 8 |
// | 切り捨て除算 | 18 = 150 // 8 |
% | 余り | 2 = 10 % 8 |
** | べき乗 | 32 = 2**5 |
コメント