Pythonにおける演算子の使い方【初心者向け解説記事】
Workteria(ワークテリア)では難易度の高いものから低いものまで、スキルや経験に合わせた案件を多数揃えています。会員登録は無料ですので、ぜひ会員登録してご希望の案件を探してみてください!
フリーランス/正社員のエンジニアとして活躍するには、ご自身のスキルや経験に合わせた仕事を選ぶことが大切です。ご希望の案件がみつからない場合はお気軽にお問い合わせください!ユーザ満足度の高いキャリアコンサルタントが在籍していますので、希望条件や悩み事などなんでもご相談ください。ご希望にピッタリの案件をご紹介させていただきます。
演算子とは?
演算子とは、プログラミング言語でデータを演算するための記号や単語のことで、数学的な計算や比較など、プログラムの処理を決定するために使用されます。主に算術演算子、比較演算子、論理演算子の3種類の演算子があります。
当記事ではこれら3種類の演算子について、また演算子の計算順序について解説します。
算術演算子
算術演算子は、数値計算に使います。主に、四則演算の他に、整数除算(除算の整数部分のみを求める)、剰余(余りを求める)、べき乗(xのy乗を求める)などがあります。
例として、以下のコードを実行します。
x = 10
y = 3
print(x + y) # 加算
print(x - y) # 減算
print(x * y) # 乗算
print(x / y) # 除算
print(x // y) # 整数除算(x÷yの整数部分のみを求める)
print(x % y) # 剰余(x÷yの余りを求める)
print(x ** y) # べき乗(xのy乗を求める)
このコードを実行すると、以下のように出力されます。
13
7
30
3.3333333333333335
3
1
1000
除算の結果がおかしい、と思う方もいらっしゃると思いますが、これはコンピュータが小数を正確に扱うことが苦手なためです。
理由は少々長くなるので割愛しますが、詳しく知りたい方は以下の記事を参照して下さい。
浮動小数点数の誤差について(無限小数・桁あふれ誤差・情報落ち・打切り誤差・桁落ち・丸め誤差)
プログラミングする際は、思わぬバグが生じることがあるため、なるべく少数を扱わないようにしましょう。
複合代入演算子
Pythonにおいて、変数を宣言する際などに用いる「=」を代入演算子といいます。代入演算子と上記の算術演算子を組み合わせた、複合代入演算子というものがあり、コードの記述量を少なくするために用いられます。
上記で紹介した算術演算子に対応する複合代入演算子は、以下の通りです。=の前にある演算子でxとyについて計算した値を、xに代入します。
x += y # 加算
x -= y # 減算
x *= y # 乗算
x /= y # 除算
x //= y # 整数除算
x %= y # 剰余
x **= y # べき乗
比較演算子
Pythonにおいて、比較演算子は、2つのデータを比較するために使用されます。比較演算子は正しい場合は「True」、 正しくない場合は 「False」 という「論理値」を結果として返します。if文などの条件分岐において、条件を指定するために使用されることもあります。
例として、以下のコードを実行します。
x = 10
y = 3
print(x == y) # xとyが等しいかどうか
print(x > y) # xがyより大きいかどうか
print(x < y) # xがyより小さいかどうか
print(x >= y) # xがy以上かどうか
print(x <= y) # xがy以下かどうか
print(x != y) # xとyが等しくないかどうか
このコードを実行すると、以下のように出力されます。
False
True
False
True
False
True
論理演算子
論理演算子は、論理値同士の演算に使います。「or」「and」「not」があります。
例として、以下のコードを実行します。
x = True
y = False
print(x or y) # xまたはyがTrueかどうか
print(x and y) # xかつyがTrueかどうか
print(not x) # xと逆の論理値
このコードを実行すると、以下のように出力されます。
True
False
False
演算子の計算順序
Pythonにおいて、数式内に複数の演算子がある場合、その計算順序は優先順位に従います。優先順位は、かっこ「()」、算術演算子、比較演算子、論理演算子、代入演算子の順になります。
例として、以下のコードを実行します。
x = 10
y = 3
print((x + y) * 2) # 「x + y」から先に計算される
print(x + y * 2) # 「y * 2」から先に計算される
print(x - 8 < y) #「x - 8」から先に計算される
print(not x > y and x < y) # 「x > y」「x > y」「not」「and」の順で計算される
このコードを実行すると、以下のように出力されます。
26
16
True
False
まとめ
当記事では基本的な演算子を紹介しましたが、Pythonにはさらに多くの演算子があり、また三角関数などを用いた複雑な数学的な計算については組み込み関数が用意されています。
また、別記事で紹介しますが、文字列やリストといったものにもこれらの演算子が使えますので、それらの挙動を覚えることでよりPythonプログラミングで出来ることが増えます。
簡単なコードを書いて試すことで、よりこれらの演算子の挙動を理解することが出来ると思います。
【著者】
フォワードソフト株式会社のエンジニア。Java、Python、JavaScript、C#などの言語の他、クラウドやネットワーク技術を勉強しています。PythonやVBAを使った自動化で楽をする方法を考えるのが好きです。 最近はジェネレーティブAIの業務利用に関する検証を行っています。 資格を通じて知識を吸収することを心がけており、セキュリティスペシャリスト、データベーススペシャリスト、応用情報技術者、Oracle Certified Java Programmer Gold SE 11、Pythin3 エンジニア認定試験、HTML5プロフェッショナル認定試験レベル2、AWSプラクティショナーなどの情報資格を保有しています。
正社員/フリーランスの方でこのようなお悩みありませんか?
- 自分に合う案件を定期的に紹介してもらいたい
- 週2、リモートワークなど自由な働き方をしてみたい
- 面倒な案件探し・契約周りは任せて仕事に集中したい
そのような方はぜひ、Workteriaサイトをご利用ください!
定期的にご本人に合う高額案件を紹介
リモートワークなど自由な働き方ができる案件多数
専属エージェントが契約や請求をトータルサポート