Step 3:計算と演算子をマスターしよう

🧮 ステップ3: 計算と演算子をマスターしよう

Pythonで計算する方法を覚えよう!

ステップ2では、変数とデータ型を学びました。今回は、Pythonで「計算」をする方法を学びます。プログラミングでは、計算記号のことを「演算子」と呼びます。

📖 このステップで学ぶこと

・算術演算子(+、-、*、/など)

・整数除算(//)と余り(%)

・べき乗(**)

・代入演算子(+=、-=など)

・比較演算子(==、!=、>、<など)

・論理演算子(and、or、not)

・演算子の優先順位

・文字列の演算

・型変換(int()、float()、str())

➕ 1. 算術演算子(基本の計算)

プログラミングでは、数学と同じように四則演算(足し算、引き算、掛け算、割り算)ができます。

🔰 基本の四則演算

📌 算術演算子一覧

演算子 意味 結果
+ 足し算 5 + 3 8
引き算 5 – 3 2
* 掛け算 5 * 3 15
/ 割り算 10 / 3 3.333…

📘 基本的な計算をしてみよう

コード:四則演算の基本

# 足し算
print(5 + 3)

# 引き算
print(10 - 4)

# 掛け算
print(6 * 7)

# 割り算
print(15 / 3)

※ 画面が小さい場合は、コードブロックを横にスクロールできます

実行結果

8
6
42
5.0

💡 コードの解説

5 + 3

 ・+(プラス)で足し算をします

 ・5と3を足して、8になります

10 – 4

 ・-(マイナス)で引き算をします

 ・10から4を引いて、6になります

6 * 7

 ・*(アスタリスク)で掛け算をします

 ・数学の×ではなく、*を使います

 ・6×7=42です

15 / 3

 ・/(スラッシュ)で割り算をします

 ・数学の÷ではなく、/を使います

 ・結果は5.0と、小数点がつきます(割り算の結果は常にfloat型)

⚠️ 掛け算と割り算の記号に注意

🔑 重要な注意点

プログラミングでは、数学とは違う記号を使います:

掛け算:

 ・❌ 数学:5 × 3

 ・✅ Python:5 * 3(アスタリスク)

割り算:

 ・❌ 数学:10 ÷ 2

 ・✅ Python:10 / 2(スラッシュ)

📝 変数を使った計算

変数に入っている値を使って計算することもできます。

コード:変数を使った計算

# 変数を作る
a = 10
b = 3

# 変数を使って計算
print(a + b)
print(a - b)
print(a * b)
print(a / b)

実行結果

13
7
30
3.3333333333333335

💡 なぜ変数を使うのか

変数を使うと、同じ値を何度も使えて便利です:

・a = 10と一度書けば、後はaと書くだけで10が使えます

・値を変更したい時は、a = 10の部分だけ書き換えればOKです

・例えば、a = 20に変えると、すべての計算結果が自動的に変わります

📝 計算結果を変数に保存する

計算した結果を、新しい変数に保存することができます。

コード:計算結果を保存

# 値を準備
price = 1000
tax_rate = 0.1

# 消費税額を計算して保存
tax = price * tax_rate
print(tax)

# 税込み価格を計算して保存
total = price + tax
print(total)

実行結果

100.0
1100.0

💡 コードの解説

tax = price * tax_rate

 ・priceとtax_rateを掛け算します

 ・1000 × 0.1 = 100.0

 ・計算結果の100.0を、taxという変数に保存します

total = price + tax

 ・priceとtaxを足し算します

 ・1000 + 100.0 = 1100.0

 ・計算結果の1100.0を、totalという変数に保存します

なぜこうするのか:

 ・計算結果を変数に保存すると、後で何度も使えます

 ・taxやtotalという名前をつけることで、何の値かわかりやすくなります

➗ 2. 整数除算と余り

Pythonには、割り算に関する便利な演算子が2つあります。

🔰 整数除算(//)

//(スラッシュ2つ)を使うと、割り算の商(小数点以下を切り捨てた整数)が得られます。

📌 /と//の違い

演算子 名前 結果
/ 普通の割り算 小数を含む 10 / 3 = 3.333…
// 整数除算 整数のみ(切り捨て) 10 // 3 = 3

コード:整数除算の例

# 普通の割り算
print(10 / 3)

# 整数除算
print(10 // 3)

# 別の例
print(17 / 5)
print(17 // 5)

実行結果

3.3333333333333335
3
3.4
3

💡 整数除算の使い道

いつ使うのか:

 ・「何人のグループに分けられるか」を知りたい時

 ・「何個のパックができるか」を計算したい時

例:

 ・23人の生徒を4人グループに分ける → 23 // 4 = 5グループ

 ・17個のりんごを5個ずつ袋に入れる → 17 // 5 = 3袋

🔰 余り(%)

%(パーセント)を使うと、割り算の余りが得られます。

コード:余りを求める

# 余りを求める
print(10 % 3)  # 10を3で割った余り
print(17 % 5)  # 17を5で割った余り
print(20 % 4)  # 20を4で割った余り(割り切れる)

実行結果

1
2
0

💡 余りの計算方法

10 % 3 = 1

 ・10 ÷ 3 = 3 あまり 1

 ・3で割ると、3が3個取れて、1が余ります

17 % 5 = 2

 ・17 ÷ 5 = 3 あまり 2

 ・5で割ると、5が3個取れて、2が余ります

20 % 4 = 0

 ・20 ÷ 4 = 5 あまり 0

 ・割り切れる場合、余りは0です

💡 余りの使い道

偶数・奇数の判定:

 ・数を2で割った余りが0なら偶数、1なら奇数

 ・例:10 % 2 = 0(偶数)、7 % 2 = 1(奇数)

割り切れるかの確認:

 ・余りが0なら割り切れる

 ・例:15 % 3 = 0(割り切れる)、15 % 4 = 3(割り切れない)

繰り返しパターンの作成:

 ・時計の文字盤(13時 → 13 % 12 = 1時)

 ・曜日の計算(8日目 → 8 % 7 = 1日目に戻る)

📝 整数除算と余りを組み合わせる

コード:実用例

# 23人を4人グループに分ける
students = 23
group_size = 4

# 何グループできるか
groups = students // group_size
print("グループ数:", groups)

# 何人余るか
remaining = students % group_size
print("余る人数:", remaining)

実行結果

グループ数: 5
余る人数: 3

💡 コードの解説

groups = students // group_size

 ・23 // 4 = 5

 ・4人グループが5つできます

remaining = students % group_size

 ・23 % 4 = 3

 ・3人が余ります

確認: 5グループ × 4人 + 3人 = 23人(正しい!)

⭐ 3. べき乗(累乗)

**(アスタリスク2つ)を使うと、累乗(〇の△乗)が計算できます。

📌 べき乗とは

2 ** 3 は「2の3乗」を意味します

 ・2 × 2 × 2 = 8

 ・2を3回掛けます

5 ** 2 は「5の2乗」を意味します

 ・5 × 5 = 25

 ・5を2回掛けます

コード:べき乗の計算

# べき乗の計算
print(2 ** 3)   # 2の3乗
print(5 ** 2)   # 5の2乗
print(10 ** 4)  # 10の4乗
print(3 ** 0)   # 3の0乗(どんな数も0乗は1)

実行結果

8
25
10000
1

💡 べき乗の使い道

面積の計算:

 ・正方形の面積 = 1辺 ** 2

 ・例:1辺が5cmの正方形 → 5 ** 2 = 25平方cm

体積の計算:

 ・立方体の体積 = 1辺 ** 3

 ・例:1辺が3cmの立方体 → 3 ** 3 = 27立方cm

データ量の計算:

 ・2 ** 10 = 1024(1キロバイト)

 ・2 ** 20 = 1048576(1メガバイト)

📝 平方根(ルート)の計算

べき乗を使えば、平方根も計算できます。

コード:平方根

# 平方根は0.5乗
print(9 ** 0.5)   # √9 = 3
print(16 ** 0.5)  # √16 = 4
print(25 ** 0.5)  # √25 = 5

実行結果

3.0
4.0
5.0

💡 なぜ0.5乗で平方根になるのか

数学的に、√x = x ** 0.5 です。

 ・√9 = 9 ** 0.5 = 3.0

 ・確認:3 × 3 = 9(正しい!)

🔄 4. 代入演算子

変数の値を「更新」する便利な書き方があります。

🔰 基本の代入演算子

まず、普通の方法で変数を更新してみます。

コード:普通の更新方法

# 変数を作る
score = 10
print(score)

# 5を足す(普通の書き方)
score = score + 5
print(score)

実行結果

10
15

💡 score = score + 5 の意味

この式は、右から左に読みます:

1. score + 5 → 現在のscoreの値(10)に5を足す

2. = → 計算結果(15)を

3. score → scoreに代入する(上書きする)

結果:scoreは10から15に更新されます

📘 複合代入演算子

「score = score + 5」は「score += 5」と短く書けます。

📌 複合代入演算子一覧

演算子 意味 同じ意味
+= 足して代入 x += 5 x = x + 5
-= 引いて代入 x -= 3 x = x – 3
*= 掛けて代入 x *= 2 x = x * 2
/= 割って代入 x /= 4 x = x / 4

コード:複合代入演算子の使用例

# 初期値
x = 10
print("最初:", x)

# 5を足す
x += 5
print("5を足す:", x)

# 3を引く
x -= 3
print("3を引く:", x)

# 2倍にする
x *= 2
print("2倍にする:", x)

# 4で割る
x /= 4
print("4で割る:", x)

実行結果

最初: 10
5を足す: 15
3を引く: 12
2倍にする: 24
4で割る: 6.0

💡 なぜ複合代入演算子を使うのか

1. コードが短くなる

 ・❌ score = score + 5(14文字)

 ・✅ score += 5(10文字)

2. 読みやすくなる

 ・「scoreに5を加える」という意図が明確

3. タイプミスが減る

 ・変数名を2回書く必要がない

📝 実用例:カウンターの更新

コード:カウンターの例

# カウンターを0から始める
counter = 0
print("開始:", counter)

# 1ずつ増やす
counter += 1
print("1回目:", counter)

counter += 1
print("2回目:", counter)

counter += 1
print("3回目:", counter)

実行結果

開始: 0
1回目: 1
2回目: 2
3回目: 3

💡 カウンターの使い道

・何回処理を実行したか数える

・ゲームのスコアを加算する

・訪問者数をカウントする

・ループで何回繰り返したか管理する(後で学びます)

🔍 5. 比較演算子

2つの値を比較して、「正しい」か「間違っている」かを判定する演算子です。

🔰 比較演算子とは

📌 比較演算子一覧

演算子 意味 結果
== 等しい 5 == 5 True
!= 等しくない 5 != 3 True
> より大きい 5 > 3 True
< より小さい 5 < 3 False
>= 以上 5 >= 5 True
<= 以下 5 <= 3 False

🔑 超重要!==と=の違い

=(イコール1つ)

 ・代入(値を入れる)

 ・例:x = 5(xに5を入れる)

==(イコール2つ)

 ・比較(等しいかチェック)

 ・例:x == 5(xは5と等しいか?)

これを混同すると、エラーの原因になります!

📘 比較演算子を使ってみよう

コード:基本的な比較

# 等しいか
print(5 == 5)  # True
print(5 == 3)  # False

# 等しくないか
print(5 != 3)  # True
print(5 != 5)  # False

# 大小の比較
print(5 > 3)   # True(5は3より大きい)
print(5 < 3)   # False(5は3より小さくない)
print(5 >= 5)  # True(5は5以上)
print(5 <= 3)  # False(5は3以下ではない)

実行結果

True
False
True
False
True
False
True
False

💡 比較結果はbool型

比較演算子の結果は、TrueまたはFalseになります。

 ・True → 比較が正しい

 ・False → 比較が間違っている

この結果は、後で学ぶ「if文(条件分岐)」で使います。

📝 変数を使った比較

コード:実用的な例

# テストの点数
score = 85
passing_score = 60

# 合格点以上か?
is_pass = score >= passing_score
print("合格:", is_pass)

# 年齢
age = 15
adult_age = 18

# 大人か?
is_adult = age >= adult_age
print("大人:", is_adult)

実行結果

合格: True
大人: False

💡 コードの解説

is_pass = score >= passing_score

 ・scoreが85、passing_scoreが60

 ・85 >= 60 は True

 ・is_passにTrueが代入されます

is_adult = age >= adult_age

 ・ageが15、adult_ageが18

 ・15 >= 18 は False

 ・is_adultにFalseが代入されます

🔗 6. 論理演算子

複数の条件を組み合わせる演算子です。

🔰 論理演算子とは

📌 論理演算子一覧

演算子 意味 結果
and かつ(両方True) True and True True
or または(どちらかTrue) True or False True
not 否定(逆にする) not True False

📘 and演算子(かつ)

andは、両方がTrueの時だけTrueになります。

コード:and演算子

# and演算子の例
print(True and True)    # True
print(True and False)   # False
print(False and True)   # False
print(False and False)  # False

# 実用例
age = 20
has_license = True

# 20歳以上かつ免許を持っているか
can_drive = (age >= 18) and has_license
print("運転できる:", can_drive)

実行結果

True
False
False
False
運転できる: True

💡 andの意味

「〜かつ〜」「〜で、なおかつ〜」

 ・両方の条件が満たされている必要があります

 ・1つでもFalseがあると、結果はFalseです

例:

 ・年齢が18歳以上 かつ 免許を持っている

 ・→ どちらも満たさないと運転できません

📘 or演算子(または)

orは、どちらか1つでもTrueならTrueになります。

コード:or演算子

# or演算子の例
print(True or True)    # True
print(True or False)   # True
print(False or True)   # True
print(False or False)  # False

# 実用例
is_weekend = True
is_holiday = False

# 週末または祝日か
can_rest = is_weekend or is_holiday
print("休める:", can_rest)

実行結果

True
True
True
False
休める: True

💡 orの意味

「〜または〜」「〜もしくは〜」

 ・どちらか1つでも満たされていればOK

 ・両方Falseの時だけ、結果がFalseです

例:

 ・週末 または 祝日

 ・→ どちらか1つでも当てはまれば休めます

📘 not演算子(否定)

notは、TrueとFalseを逆にします。

コード:not演算子

# not演算子の例
print(not True)   # False
print(not False)  # True

# 実用例
is_raining = False

# 雨が降っていないか
can_play_outside = not is_raining
print("外で遊べる:", can_play_outside)

実行結果

False
True
外で遊べる: True

💡 notの意味

「〜ではない」「〜でない」

 ・条件を逆転させます

 ・True → False、False → True

例:

 ・雨が降っている → False

 ・雨が降っていない → not False = True

📝 複数の論理演算子を組み合わせる

コード:組み合わせ例

# 学生割引の条件
age = 16
is_student = True

# 18歳未満、かつ学生
gets_discount = (age < 18) and is_student
print("割引あり:", gets_discount)

# チケット購入の条件
has_money = True
has_time = False

# お金がある、または時間がある
can_buy_ticket = has_money or has_time
print("チケット購入可能:", can_buy_ticket)

実行結果

割引あり: True
チケット購入可能: True

📐 7. 演算子の優先順位

複数の演算子がある場合、どの順番で計算されるかが決まっています。

📌 演算子の優先順位(高い順)

優先順位 演算子
1(最優先) **(べき乗) 2 ** 3
2 *、/、//、% 5 * 3
3 +、- 5 + 3
4 ==、!=、>、<、>=、<= 5 > 3
5 not not True
6 and True and False
7(最後) or True or False

コード:優先順位の例

# 掛け算が先に計算される
result1 = 2 + 3 * 4
print(result1)  # 14(3*4が先、その後+2)

# べき乗が最優先
result2 = 2 ** 3 * 4
print(result2)  # 32(2**3=8が先、その後*4)

# カッコで優先順位を変える
result3 = (2 + 3) * 4
print(result3)  # 20(カッコ内が先に計算される)

実行結果

14
32
20

💡 カッコを使おう

優先順位を覚えるより、カッコ()を使う方が確実です:

 ・読みやすくなる

 ・間違いが起きにくい

 ・意図が明確になる

例:

 ・❌ 2 + 3 * 4(優先順位を覚える必要がある)

 ・✅ 2 + (3 * 4)(明確で読みやすい)

✂️ 8. 文字列の演算

文字列も、+や*を使って操作できます。

📘 文字列の連結(+)

ステップ2で少し学びましたが、もう一度復習しましょう。

コード:文字列の連結

# 文字列を連結
first_name = "太郎"
last_name = "山田"
full_name = last_name + first_name
print(full_name)

# スペースを入れる
greeting = "こんにちは、" + full_name + "さん"
print(greeting)

実行結果

山田太郎
こんにちは、山田太郎さん

📘 文字列の繰り返し(*)

*を使うと、文字列を繰り返せます。

コード:文字列の繰り返し

# 文字列を繰り返す
print("=" * 20)
print("Hello" * 3)
print("-" * 10)

実行結果

====================
HelloHelloHello
----------

💡 使い道

・区切り線を作る

・パターンを繰り返す

・空白スペースを作る

⚠️ 文字列と数値は混ぜられない

🔑 重要な注意点

文字列と数値を直接+でつなぐことはできません。

コード:エラーになる例

age = 15
message = "私は" + age + "歳です"  # エラー!
print(message)

❌ エラーメッセージ

TypeError: can only concatenate str (not "int") to str

この問題を解決するのが、次の「型変換」です。

🔄 9. 型変換(キャスト)

データ型を別の型に変換することを「型変換」または「キャスト」と呼びます。

🔰 型変換関数

📌 型変換関数一覧

関数 変換先 結果
int() 整数型 int("123") 123
float() 浮動小数点数型 float("3.14") 3.14
str() 文字列型 str(123) "123"

📘 int()で整数に変換

コード:int()の使用例

# 文字列を整数に変換
age_str = "15"
age_int = int(age_str)

print(type(age_str))  # str型
print(type(age_int))  # int型

# 計算ができるようになる
next_year_age = age_int + 1
print(next_year_age)

実行結果

<class 'str'>
<class 'int'>
16

💡 int()の使い道

・ユーザーの入力(文字列)を数値に変換

・ファイルから読み込んだ数字(文字列)を計算に使う

・小数を整数に変換(小数点以下切り捨て)

📘 float()で小数に変換

コード:float()の使用例

# 文字列を小数に変換
height_str = "165.5"
height_float = float(height_str)

print(type(height_str))    # str型
print(type(height_float))  # float型

# 整数を小数に変換
age = 15
age_float = float(age)
print(age_float)  # 15.0

実行結果

<class 'str'>
<class 'float'>
15.0

📘 str()で文字列に変換

これが、数値と文字列を混ぜる問題の解決策です。

コード:str()で問題解決

# 数値を文字列に変換
age = 15
age_str = str(age)

# 文字列として連結できる
message = "私は" + age_str + "歳です"
print(message)

# 直接変換することも可能
score = 85
result = "点数は" + str(score) + "点です"
print(result)

実行結果

私は15歳です
点数は85点です

💡 str()の使い道

・数値を含むメッセージを作る

・計算結果を文章に組み込む

・数値をファイルに保存する(文字列として)

📝 実用例:複数の型変換

コード:型変換の組み合わせ

# 文字列の数値を計算に使う
price_str = "1000"
tax_rate = 0.1

# 文字列を整数に変換
price = int(price_str)

# 税込み価格を計算
total = price + (price * tax_rate)

# 結果を文字列に変換して表示
message = "税込み価格は" + str(total) + "円です"
print(message)

実行結果

税込み価格は1100.0円です

💡 手順の整理

1. price_str(文字列"1000")をint()で整数1000に変換

2. 計算を実行(1000 + 1000 * 0.1 = 1100.0)

3. total(数値1100.0)をstr()で文字列"1100.0"に変換

4. 文字列として連結してメッセージを作成

⚠️ 型変換できない場合

🔑 変換できない例

数字以外の文字列をint()やfloat()で変換しようとするとエラーになります。

コード:エラー例

# エラーになる例
text = "こんにちは"
number = int(text)  # エラー!数字ではない文字列は変換できない

❌ エラーメッセージ

ValueError: invalid literal for int() with base 10: 'こんにちは'

「数字として解釈できない」という意味です。

📝 練習問題

ここまで学んだことを、実際に手を動かして確認しましょう。

問題1:基本的な計算(初級)

📋 問題

以下の計算をして、結果を表示してください:

・123 + 456

・100 - 37

・12 * 8

・144 / 12

解答例を見る

コード

print(123 + 456)
print(100 - 37)
print(12 * 8)
print(144 / 12)

実行結果

579
63
96
12.0

問題2:整数除算と余り(初級)

📋 問題

27個のりんごを5個ずつ袋に入れます。

・何袋できますか?(//を使う)

・何個余りますか?(%を使う)

解答例を見る

コード

apples = 27
bag_size = 5

# 袋の数
bags = apples // bag_size
print("袋の数:", bags)

# 余りの数
remaining = apples % bag_size
print("余り:", remaining)

実行結果

袋の数: 5
余り: 2

問題3:べき乗の計算(初級)

📋 問題

1辺が7cmの正方形の面積を計算してください。

(面積 = 1辺 ** 2)

解答例を見る

コード

side = 7
area = side ** 2
print("面積:", area, "平方cm")

実行結果

面積: 49 平方cm

問題4:複合代入演算子(中級)

📋 問題

変数scoreを100で初期化し、以下の操作をしてください:

1. 20を足す(+=)

2. 10を引く(-=)

3. 2倍にする(*=)

各操作後のscoreを表示してください。

解答例を見る

コード

score = 100
print("最初:", score)

score += 20
print("20を足す:", score)

score -= 10
print("10を引く:", score)

score *= 2
print("2倍にする:", score)

実行結果

最初: 100
20を足す: 120
10を引く: 110
2倍にする: 220

問題5:比較演算子(中級)

📋 問題

変数ageを14で初期化し、以下を確認してください:

・18歳以上か?

・13歳より大きいか?

・14歳と等しいか?

それぞれTrueまたはFalseで結果を表示してください。

解答例を見る

コード

age = 14

print("18歳以上:", age >= 18)
print("13歳より大きい:", age > 13)
print("14歳と等しい:", age == 14)

実行結果

18歳以上: False
13歳より大きい: True
14歳と等しい: True

問題6:論理演算子(中級)

📋 問題

以下の変数を使って、映画を見られるか判定してください:

・age = 16

・has_ticket = True

条件:15歳以上、かつチケットを持っている

解答例を見る

コード

age = 16
has_ticket = True

can_watch = (age >= 15) and has_ticket
print("映画を見られる:", can_watch)

実行結果

映画を見られる: True

問題7:型変換(上級)

📋 問題

以下の文字列を数値に変換して計算し、結果を文章で表示してください:

・num1 = "50"

・num2 = "30"

「50と30を足すと〇〇です」と表示してください。

解答例を見る

コード

num1 = "50"
num2 = "30"

# 文字列を整数に変換
n1 = int(num1)
n2 = int(num2)

# 計算
result = n1 + n2

# 結果を文字列に変換して表示
message = num1 + "と" + num2 + "を足すと" + str(result) + "です"
print(message)

実行結果

50と30を足すと80です

問題8:総合問題(上級)

📋 問題

商品価格2500円に対して、以下を計算してください:

1. 10%割引した価格

2. さらに消費税10%を加えた最終価格

3. 結果を「最終価格は〇〇円です」と表示

解答例を見る

コード

# 元の価格
price = 2500

# 10%割引
discount_rate = 0.1
discounted_price = price * (1 - discount_rate)
print("割引後:", discounted_price)

# 消費税10%
tax_rate = 0.1
final_price = discounted_price * (1 + tax_rate)
print("最終価格:", final_price)

# 結果を文章で表示
message = "最終価格は" + str(final_price) + "円です"
print(message)

実行結果

割引後: 2250.0
最終価格: 2475.0
最終価格は2475.0円です

💡 ポイント

・10%割引 = 元の価格 × 0.9(= 1 - 0.1)

・消費税10%加算 = 価格 × 1.1(= 1 + 0.1)

🎯 このステップのまとめ

✅ 学んだこと

✓ 算術演算子:+、-、*、/

✓ 整数除算(//)と余り(%)

✓ べき乗(**)

✓ 複合代入演算子:+=、-=、*=、/=

✓ 比較演算子:==、!=、>、<、>=、<=

✓ 論理演算子:and、or、not

✓ 演算子の優先順位とカッコの使用

✓ 文字列の連結と繰り返し

✓ 型変換:int()、float()、str()

💡 次のステップに進む前に確認

以下のことができるようになったか確認しましょう:

□ 四則演算ができる

□ //と%の違いがわかる

□ 比較演算子でTrue/Falseを得られる

□ andとorを使って複数の条件を組み合わせられる

□ str()を使って数値を文字列に変換できる

□ int()を使って文字列を数値に変換できる

これらができたら、次のステップに進みましょう!

❓ よくある質問

Q1: /と//の違いは何ですか?

A: /は普通の割り算で小数を含む結果、//は小数を切り捨てた整数の結果です。

・10 / 3 = 3.333...(小数を含む)

・10 // 3 = 3(小数切り捨て)

Q2: %演算子は何に使うのですか?

A: 主に以下の用途で使います:

・偶数・奇数の判定(x % 2 == 0なら偶数)

・割り切れるかの確認(x % y == 0なら割り切れる)

・循環パターンの作成(時計、曜日など)

Q3: ==と=を間違えるとどうなりますか?

A: エラーになるか、予期しない動作をします。

if x = 5: → エラー(比較には==を使う)

x == 5 → xが5かチェック(代入ではない)

必ず、代入は=、比較は==と覚えましょう。

Q4: andとorの違いがわかりません

A: 簡単に言うと:

and: 両方の条件が満たされる必要がある

 ・例:年齢が18歳以上 かつ 免許を持っている

or: どちらか1つでも満たされればOK

 ・例:週末 または 祝日

Q5: 型変換しないとエラーになるのはなぜですか?

A: Pythonは、異なる型を混ぜることを許しません。

・"15"(文字列)と15(整数)は別物

・"15" + 5 → エラー(文字と数を足せない)

・int("15") + 5 → OK(両方とも整数)

Q6: カッコはいつ使うべきですか?

A: 迷ったら使いましょう。カッコを使いすぎても問題ありません。

・(2 + 3) * 4 → わかりやすい

・2 + 3 * 4 → 優先順位を覚える必要がある

Q7: 小数の計算で誤差が出るのはなぜですか?

A: コンピュータは小数を2進数で扱うため、わずかな誤差が出ます。

・0.1 + 0.2 = 0.30000000000000004(わずかな誤差)

・通常の計算では気にする必要はありません

・正確な計算が必要な場合は、後で学ぶDecimal型を使います

Q8: 複合代入演算子は必須ですか?

A: 必須ではありませんが、使うことを強くおすすめします。

・コードが短くなる

・読みやすくなる

・プログラマーの標準的な書き方

慣れると、x = x + 1より、x += 1の方が自然に感じます。

📝

学習メモ

Pythonデータ分析入門 - Step 3

📋 過去のメモ一覧
#artnasekai #学習メモ
LINE