Python の演算子

プログラミングで「演算子」というのは、演算を表す記号のことです。

「演算」というのは、足し算、引き算、掛け算、割り算などの他に、値を比較したり、論理式を評価したり、というような計算処理のことです。

ここでは 基本的な Python の演算子についてご説明します。

Python の算術演算子

算術演算子は数学と似ているので感覚的にわかりやすい演算子です。

例えば a と b という変数を足し算したい時には、 + 演算子を使って a + b のように書きます。

Python の算術演算子には次のようなものがあります。

演算子演算
+加算a + b
-減算a - b
*乗算a * b
/除算a / b
%剰余a % b
//切り捨て除算a // b
**べき乗a ** b

次のように % の「剰余」は、割り算をした結果の余りを返します。

// の「切り捨て除算」は、割り算の結果の小数点部分を切り捨てて、整数部分だけを返します。

a = 13
b = 5
print(a % b) # -> 3
print(a // b) # -> 2

Python の比較演算子

比較演算子はその左右の値を比較し、結果を True(真)または False(偽)で返します。

Python の比較演算子には次のようなものがあります。

演算子意味
==a == ba と b が等しい
!=a != ba と b が等しくない
<a < ba が b よりも小さい
>a > ba が b よりも大きい
<=a <= ba が b よりも小さいか等しい
>=a >= ba が b よりも大きいか等しい
a = 1
b = 2
print(a == b) # -> False
print(a < b) # -> True

Python の代入演算子

今まで、変数に値を代入するのに msg = "Hello Python!" や value = 12 のように書いてきましたが、この = は代入演算子のひとつです。

= の「右側の値を左側に変数に代入する」という意味の演算子です。

Python の代入演算子には次のようなものがあります。

演算子意味
=a = 2a = 2
+=a += 2a = a + 2
-=a -= 2a = a - 2
*=a *= 2a = a * 2
/=a /= 2a = a / 2
%=a %= 2a = a % 2
//=a //= 2a = a // 2
**=a **= 2a = a ** 2
a = 2
a *= 3
print(a) # -> 6


Python の論理演算子

論理演算子は 2 つの True(真)/ False(偽)の結果を合わせて評価したいような時に役立ちます。

例えば、「a と b が等しくて、かつ、a が 5 より小さい」というような判断をしたい時は、and という論理演算子をつかって次のように書くことができます。

a = 2
b = 2
print(a == b and a < 5) # -> True

a = 6
b = 6
print(a == b and a < 5) # -> False

Python の論理演算子には次のようなものがあります。

演算子意味
anda == b and a < 5両方 True の時のみ True を返す
ora == b or a < 5片方が True であれば True を返す
notnot(a == b)引数(括弧の中)が True であれば False、
False であれば True を返す

Python 演算子の優先順位

Python の演算子には評価をしていく優先順位があります。

算数でも括弧がない時は、足し算引き算よりも掛け算割り算のほうが先に計算しましたよね! あんな感じです。


Python には他にも演算子がありますが、代表的な演算子の優先順位をご紹介しておきます。

優先順位の高いほうがら低いほうに並べています。

優先順位演算子
1**
2*, /, //, %
3+, -
4not
5and
6or
7代入

優先順位が同じ場合は、代入をのぞいて、左から右へ順番に評価されていきます。

代入だけは、右側を評価してから左側に代入されます。


これに加えて、括弧があればそれが一番優先されます。

演算子の優先順位を知っておくのは、コードを読むのに大事ですが、括弧があるほうがわかりやすコードになるので、優先順位だけにまかせずに、どんどん括弧は使って良いと思います。


以上、Python のよく使われる演算子についてご説明しました。

© 2024 やさしい Python 入門