演算子について
演算子とは、プログラミングにおいて演算(計算)する時に使われる記号のこと
演算子は簡単にいうと、1 + 1 = 2 の計算式があった時の「+」に該当するものです。
計算式で使われる記号以外にも、演算子にはいくつかの種類が存在します。
・算術演算子
・文字列演算子
・比較演算子
・論理演算子
上記以外にもまだありますが、最初のうちはこの4つ覚えていれば問題ありません。
比較演算と論理演算子については4章で解説します。この章では算術演算子と文字列演算子について解説します。
算術演算子について
算術演算子は計算で使われる「 + – / * 」になります。
算術演算子は以下があります。
a + b # 加算
a - b # 減算
a * b # 乗算
a / b # 除算
a % b # 剰余(a を b で割ったあまり)
a // b # 累乗(a の b 乗)
それぞれを実際にプログラムで書いて実行して試してみましょう。
コード
num1 = 3
num2 = 2
plus_result = num1 + num2 # 加算
minus_result = num1 - num2 # 減算
multi_result = num1 * num2 # 乗算
division_result = num1 / num2 # 除算
surplus_result = num1 % num2 # 剰余
power_result = num1 ** num2 # 累乗
print("加算の結果:", plus_result)
print("減算の結果:", minus_result)
print("乗算の結果:", multi_result)
print("徐算の結果:", division_result)
print("剰余の結果:", surplus_result)
print("累乗の結果:", power_result)
実行結果
加算の結果: 5
減算の結果: 1
乗算の結果: 6
徐算の結果: 1.5
剰余の結果: 1
累乗の結果: 9
算術演算子は型がint型かfloat型でしか計算できません。したがって変数の値が「1」のように数字であったとしても、str型の場合はエラーとなります。
コード
num1 = "1"
num2 = 2
print(type(num1))
print(type(num2 ))
result = num1 + num2
print(result)
実行結果
<class 'str'>
<class 'int'>
Traceback (most recent call last):
File "/Users/python/python-for-blog/test.py", line 7, in <module>
result = num1 + num2
TypeError: can only concatenate str (not "int") to str
文字列演算子
文字列の演算子は文字列同士を連結させる時などに使います。
文字列の演算子は以下があります。
a + b # 文字列を連結
a * n # aをn回繰り返す
a[n] # aのn番目の文字を取り出す
a[m:n] # aのm番目からn番目の文字を取り出す
a[n:] # aのn番目から最後までの文字を取り出す
a[:n] # aの最初からn番目までの文字を取り出す
a[m:n:s] # aのm番目からn番目の文字をs個飛ばしで取り出す
色々とありますが、今は文字列の連結だけ覚えておけば問題ありません。
その他は「こんなのあったな」くらいで記憶しておいて、使う時になったら調べてみるようにしてください。
また注意点として、文字列の始まりは0番目からになります。
それぞれを実際にプログラムで書いて実行して試してみましょう。
コード
str1 = "あいうえおかきくけこ"
str2 = "さしすせそ"
plus_result = str1 + str2 # 文字列の連結
repeat_result = str1 * 3 # 文字列の繰り返す
extraction_result1 = str1[3] # 文字の取り出し1
extraction_result2 = str1[4:7] # 文字の取り出し2
extraction_result3 = str1[5:] # 文字の取り出し3
extraction_result4 = str1[:5] # 文字の取り出し4
extraction_result5 = str1[2:6:3] # 文字の取り出し5
print("文字列の連結:", plus_result)
print("文字列の繰り返し:", repeat_result)
print("文字列の取り出し1:", extraction_result1)
print("文字列の取り出し2:", extraction_result2)
print("文字列の取り出し3:", extraction_result3)
print("文字列の取り出し4:", extraction_result4)
print("文字列の取り出し5:", extraction_result5)
実行結果
文字列の連結: あいうえおかきくけこさしすせそ
文字列の繰り返し: あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ
文字列の取り出し1: え
文字列の取り出し2: おかき
文字列の取り出し3: かきくけこ
文字列の取り出し4: あいうえお
文字列の取り出し5: うか
練習問題
問題1 以下の計算結果をプログラムで確認せよ。
(1) 5 ÷ 10
(2) 5 × 10
(3) 1 + 1.1
コード
# 変数宣言
num1 = 5
num2 = 10
# 計算
division_result = num1 / num2
multi_result = num1 * num2
# 結果出力
print("徐算の結果:", division_result)
print("乗算の結果:", multi_result)
# 代入
num1 = 1
num2 = 1.1
# 計算
plus_result = num1 + num2
# 結果出力
print("加算の結果:", plus_result)
※ コードは解答例です。正解は一つではありません。
問題2 以下の文字列演算の結果を確認せよ。
(1) “Hello” + “World”
コード
# 変数宣言
str1 = "Hello"
str2 = "World"
# 文字列演算
str3 = str1 + str2
# 結果出力
print(str3)
※ コードは解答例です。正解は一つではありません。