Python | 1 日 60 分 × 7 日アプリ学習:Python文法を学ぶアプリ 電卓編

Web APP Python
スポンサーリンク
スポンサーリンク

1日目のゴールと全体像

この7日間の学習では、Pythonで「電卓アプリ」を作りながら、自然に文法を身につけていくことを目標にします。 1日目のテーマは、電卓アプリの“土台”になる5つの要素です。

変数 条件分岐 繰り返し 関数 ファイル操作

これらは、Pythonだけでなく、ほぼすべてのプログラミング言語で「基礎の柱」となる考え方です。 電卓というシンプルな題材を使うことで、初心者でもイメージしやすく、すぐに動くコードを書けるようになります。

変数とは何か(電卓の「メモリ」として考える)

変数は「値に名前をつける仕組み」

変数は、プログラムの中で「値に名前をつけて覚えておくための箱」のようなものです。 電卓でいうと「メモリ機能」に近いイメージです。

例えば、足し算をするときに、2つの数字を変数に入れてみます。

a = 10
b = 5
result = a + b
print(result)
Python

ここで重要なのは、abresult は「ただのラベル」だということです。 a という名前の箱に 10 が入っている、b に 5 が入っている、resulta + b の結果が入っている、というイメージです。

初心者がよくやってしまうのは、「変数名を適当にする」ことです。 例えば、x, y, z ばかり使ってしまうと、コードを読んだときに「何の値なのか」が分かりにくくなります。

電卓アプリなら、次のような名前のほうが分かりやすくなります。

first_number = 10
second_number = 5
sum_result = first_number + second_number
print(sum_result)
Python

このように、変数名は「自分や他人が読んだときに意味が分かる名前」にすることがとても重要です。 変数は、電卓アプリの中で「入力された数字」「計算結果」「選ばれた操作(足し算・引き算など)」を覚えておく役割を持ちます。

条件分岐とは何か(電卓の「モード切り替え」として考える)

条件分岐は「もし〜なら〜する」という考え方

条件分岐は、プログラムに「状況によって動きを変える」力を与えます。 電卓でいうと、「ユーザーが選んだ操作によって計算方法を変える」イメージです。

Pythonでは、if 文を使って条件分岐を書きます。

operation = "+"  # ユーザーが選んだ操作だと仮定

a = 10
b = 5

if operation == "+":
    result = a + b
elif operation == "-":
    result = a - b
else:
    result = None
    print("対応していない操作です")

print(result)
Python

ここで重要なのは、if の条件部分です。

operation == "+" は、「operation が ‘+’ と等しいか?」という意味です。 この条件が True(真)なら、そのブロックの中身が実行されます。

電卓アプリでは、次のような流れを作ることができます。

  1. ユーザーに操作を入力してもらう(+, -, *, / など)
  2. if 文で操作の種類を判定する
  3. それぞれの操作に応じた計算を行う

例えば、簡単なテンプレートは次のようになります。

operation = input("操作を入力してください (+, -, *, /): ")

a = int(input("1つ目の数字: "))
b = int(input("2つ目の数字: "))

if operation == "+":
    result = a + b
elif operation == "-":
    result = a - b
elif operation == "*":
    result = a * b
elif operation == "/":
    result = a / b
else:
    print("不正な操作です")
    result = None

print("結果:", result)
Python

ここで深掘りしたいポイントは、「条件分岐は電卓の“頭脳”になる」ということです。 どの操作を選んだかによって、プログラムの動きが変わる。 この「分岐の考え方」が分かると、ゲーム、Webアプリ、ツールなど、あらゆるプログラムで応用できます。

繰り返しとは何か(電卓の「何度でも使える」仕組みとして考える)

繰り返しは「同じ処理を何度も実行する」ための仕組み

電卓アプリを作るとき、「一回だけ計算して終わり」では少し寂しいですよね。 ユーザーが「もう一回計算したい」と思ったときに、何度でも使えるようにしたいはずです。

そこで使うのが「繰り返し」です。 Pythonでは、whilefor を使って繰り返し処理を書きます。

電卓アプリでよく使うのは while です。

while True:
    operation = input("操作を入力してください (+, -, *, /), qで終了: ")

    if operation == "q":
        print("終了します")
        break

    a = int(input("1つ目の数字: "))
    b = int(input("2つ目の数字: "))

    if operation == "+":
        result = a + b
    elif operation == "-":
        result = a - b
    elif operation == "*":
        result = a * b
    elif operation == "/":
        result = a / b
    else:
        print("不正な操作です")
        result = None

    print("結果:", result)
Python

ここで重要なのは、while True: という書き方です。 これは「永遠に繰り返す」という意味ですが、break を使うことで途中で抜けることができます。

operation == "q" のときに break しているので、ユーザーが q を入力したらループを抜けて終了します。

このように、繰り返しは「電卓を何度でも使えるようにする」ための仕組みです。 ゲームのループ、Webサーバーのリクエスト処理、ログの監視など、あらゆる場面で繰り返しは使われます。

関数とは何か(電卓の「部品」を作るイメージ)

関数は「処理に名前をつけて再利用する仕組み」

関数は、プログラムの中で「まとまった処理に名前をつけて、何度でも呼び出せるようにする」ための仕組みです。 電卓アプリでは、「足し算」「引き算」「掛け算」「割り算」をそれぞれ関数にすると、コードがとても読みやすくなります。

例えば、次のように書けます。

def add(a, b):
    return a + b

def sub(a, b):
    return a - b

def mul(a, b):
    return a * b

def div(a, b):
    return a / b
Python

ここで重要なのは、defreturn です。

def は「関数を定義する」ためのキーワードです。 return は「関数の結果を呼び出し元に返す」ためのキーワードです。

これらの関数を使って、電卓の本体を次のように書けます。

def calculate(operation, a, b):
    if operation == "+":
        return add(a, b)
    elif operation == "-":
        return sub(a, b)
    elif operation == "*":
        return mul(a, b)
    elif operation == "/":
        return div(a, b)
    else:
        return None

while True:
    operation = input("操作を入力してください (+, -, *, /), qで終了: ")

    if operation == "q":
        print("終了します")
        break

    a = int(input("1つ目の数字: "))
    b = int(input("2つ目の数字: "))

    result = calculate(operation, a, b)
    print("結果:", result)
Python

ここで深掘りしたいポイントは、「関数は電卓アプリの“部品”になる」ということです。 足し算の部品、引き算の部品、掛け算の部品、割り算の部品。 それぞれを関数として切り出すことで、コードの見通しが良くなり、修正もしやすくなります。

関数は、プログラムを「小さな部品の集まり」として考えるための重要な概念です。 この考え方が身につくと、アプリ全体を「部品の組み合わせ」として設計できるようになります。

ファイル操作とは何か(電卓の「履歴を保存する」機能として考える)

ファイル操作は「データを外に残す」ための仕組み

電卓アプリに少しだけ“実用的な香り”を足すなら、「計算履歴をファイルに保存する」機能をつけると面白くなります。 Pythonでは、open を使ってファイルを読み書きできます。

例えば、計算結果を毎回ファイルに追記するコードは次のようになります。

def save_history(operation, a, b, result):
    with open("history.txt", "a", encoding="utf-8") as f:
        line = f"{a} {operation} {b} = {result}\n"
        f.write(line)
Python

ここで重要なのは、with open(...) as f: という書き方です。 これは「ファイルを開いて、使い終わったら自動的に閉じる」という安全な書き方です。

"a" は「追記モード」を意味します。 毎回新しい行を追加していくので、履歴がどんどん溜まっていきます。

この関数を電卓の本体に組み込むと、次のようになります。

while True:
    operation = input("操作を入力してください (+, -, *, /), qで終了: ")

    if operation == "q":
        print("終了します")
        break

    a = int(input("1つ目の数字: "))
    b = int(input("2つ目の数字: "))

    result = calculate(operation, a, b)
    print("結果:", result)

    save_history(operation, a, b, result)
Python

これで、計算するたびに history.txt に履歴が残っていきます。

ファイル操作は、「プログラムの外にデータを残す」ための基本的な技術です。 ログを残す、設定ファイルを読む、データを保存するなど、あらゆるアプリで使われます。

1日目で本当に掴んでほしいこと

1日目で大事なのは、「電卓アプリ」という具体的なイメージを通して、次の5つの柱を体で覚えることです。

変数は「値に名前をつける箱」 条件分岐は「状況によって動きを変える頭脳」 繰り返しは「何度でも使えるループ」 関数は「処理を部品として再利用する仕組み」 ファイル操作は「データを外に残す技術」

電卓というシンプルな題材でも、これだけ多くの重要な概念が詰まっています。 この5つを意識しながらコードを書くことで、「ただ動くコード」ではなく「意味のあるコード」を書けるようになります。

2日目以降は、この電卓アプリを少しずつ拡張しながら、Python文法とアプリ設計の感覚を育てていきます。

タイトルとURLをコピーしました