こんにちは、Tech Samuraiです!
前回の記事「【Python入門 #2】プログラミングの心臓部!「変数」でデータに名前をつけよう」では、データを入れておくための「箱」である変数について学びましたね。
データを箱に入れることができるようになったら、次はその中身を使って何かをしたくなるのが人間の性(さが)です。今回のテーマは、その「何かをする」ための道具、「演算子(えんざんし)」です。
演算子とは、足し算や引き算といった、データに対する様々な「操作」を行うための記号のことです。これをマスターすれば、あなたのプログラムは単なるデータの記憶装置から、計算し、判断し、新しいデータを生み出す、真のコンピュータへと進化します。さあ、コンピュータの最も得意なこと、計算の世界を探検しましょう!
算術演算子:おなじみの計算記号たち
まずは、最も身近で分かりやすい、数値計算のための算術演算子から紹介します。小学校で習った算数の記号とほとんど同じですが、いくつかプログラミング特有のものがあります。
演算子 | 意味 | 使用例 | 結果 |
---|---|---|---|
+ | 足し算(加算) | 5 + 3 | 8 |
- | 引き算(減算) | 5 - 3 | 2 |
* | 掛け算(乗算) | 5 * 3 | 15 |
/ | 割り算(除算) | 5 / 3 | 1.666... |
// | 割り算(切り捨て) | 5 // 3 | 1 |
% | 割り算の余り | 5 % 3 | 2 |
** | べき乗 | 5 ** 3 | 125 |
ポイント:
- 掛け算が
×
ではなく*
(アスタリスク) - 割り算が
÷
ではなく/
(スラッシュ) - べき乗(5の3乗など)が
**
というのがプログラミングの世界でのルールです。
実際にコードで試してみましょう。変数と組み合わせることで、よりプログラムらしくなります。
# 変数に数値を代入
x = 10
y = 3
# 色々な算術演算子を試してみる
print(f"{x} + {y} = {x + y}")
print(f"{x} - {y} = {x - y}")
print(f"{x} * {y} = {x * y}")
print(f"{x} / {y} = {x / y}")
print(f"{x} // {y} = {x // y}") # 10を3で割った商
print(f"{x} % {y} = {x % y}") # 10を3で割った余り
print(f"{x} ** {y} = {x ** y}") # 10の3乗
実行結果:
10 + 3 = 13
10 - 3 = 7
10 * 3 = 30
10 / 3 = 3.3333333333333335
10 // 3 = 3
10 % 3 = 1
10 ** 3 = 1000
特に//
(切り捨て除算)と%
(余り)は、特定の周期で何かを繰り返す処理などで、後々とても役に立つのでぜひ覚えておいてください。
文字列の結合:+ 演算子のもう一つの顔
+
演算子は、数値に使うと足し算になりますが、文字列に使うと、文字列同士を連結するという別の働きをします。
last_name = "Tech"
first_name = "Samurai"
# + 演算子で文字列を結合
full_name = last_name + " " + first_name
print(full_name)
実行結果:
Tech Samurai
同様に、*
演算子も文字列に使うと、その文字列を指定した回数だけ繰り返す、という面白い動きをします。
print("=" * 20)
print("メニュー")
print("=" * 20)
実行結果:
====================
メニュー
====================
このように、演算子は対象となるデータの「型」によって、その振る舞いが変わることがあります。
代入演算子:変数に値を効率的に代入する
変数に値を代入する=
も演算子の一種です。そして、計算と代入を同時に行う、便利な短縮形の演算子があります。
短縮形 | 通常の書き方 | 意味 |
---|---|---|
x += 3 | x = x + 3 | xに3を足して、結果をxに再代入 |
x -= 3 | x = x - 3 | xから3を引いて、結果をxに再代入 |
x *= 3 | x = x * 3 | xに3を掛けて、結果をxに再代入 |
x /= 3 | x = x / 3 | xを3で割って、結果をxに再代入 |
これは、カウンターのように変数の値を繰り返し更新していく際によく使われます。
score = 0
print(f"現在のスコア: {score}")
# アイテムを拾った!
score += 10
print(f"アイテムを拾った! 現在のスコア: {score}")
# 敵に当たった…
score -= 5
print(f"敵に当たった… 現在のスコア: {score}")
実行結果:
現在のスコア: 0
アイテムを拾った! 現在のスコア: 10
敵に当たった… 現在のスコア: 5
まとめ
今回は、プログラムに計算や操作を行わせるための「演算子」について探検しました。
- 算術演算子(
+
,-
,*
,/
,//
,%
,**
)を使って、様々な数値計算ができること。 +
や*
演算子が、文字列に対しては異なる働き(連結と繰り返し)をすること。- 代入演算子(
+=
,-=
)を使って、変数の値を効率的に更新する方法。
演算子をマスターしたことで、あなたのプログラムは、ただデータを記憶するだけでなく、そのデータを元に新しい価値を生み出す「処理」を行う能力を手に入れました。
さて、計算ができるようになったら、次はその計算結果に基づいて「もし〜ならば、こうする」という条件分岐をさせたくなりますよね。次回は、プログラムに判断力と思考力を与える「比較演算子とif文」の世界を探検します。お楽しみに!
コメント