単位変換アプリ 1日目のゴール
単位変換アプリ 1日目のテーマは 「数値を入力して“別の単位に変換する”最小のアプリを作りながら、変数・条件分岐・繰り返し・関数・ファイル操作の基礎を体験すること」 です。
単位変換は初心者にとって非常に学びやすい題材です。 理由はシンプルで、
- 入力するデータが数値だけで簡単
- 計算結果がすぐに確認できる
- 後日「複数の単位」「メニュー形式」「履歴保存」などに発展できる
というメリットがあるからです。
1日目で作るアプリのイメージ
- メートル → キロメートル
- キログラム → グラム
- 摂氏 → 華氏
など、1つの単位変換を行う最小アプリを作ります。
今回の例では 「メートル → キロメートル」 を変換するアプリを作ります。
変数とは何か(単位変換で理解する)
変数は「値を入れておく箱」です。
単位変換では、次のような情報を変数に入れます。
meter = 500
kilometer = meter / 1000
Python深掘りポイント
- 変数名は「何が入っているか」がわかる名前にする
meterやkilometerのように意味のある名前が重要- 初心者がつまずくポイントは「変数名を短くしすぎること」
条件分岐とは「状況によって動きを変えること」
単位変換アプリでの条件分岐の代表例はこれです。
y→ 続けて変換するn→ アプリ終了- その他 → 入力ミスとして注意
answer = input("続けて変換しますか? (y/n): ")
if answer == "y":
print("もう1件変換します。")
elif answer == "n":
print("終了します。")
else:
print("y か n を入力してください。")
Python深掘りポイント
条件分岐は「ユーザーの選択に応じてアプリの流れを変えるための仕組み」。 これがないとアプリは「一度動いて終わり」になってしまいます。
繰り返しとは「同じ流れを何度も回すこと」
単位変換は複数回使うことが多いので、 「入力 → 計算 → 表示 → 続けるか聞く」 という流れを何度も繰り返します。
ここでは while True: を使います。
while True:
# 入力処理
answer = input("続けて変換しますか? (y/n): ")
if answer == "y":
pass
elif answer == "n":
break
else:
print("y か n を入力してください。")
Python深掘りポイント
while True:は「無限ループ」breakでループを抜ける- コンソールアプリの基本構造
関数とは「処理に名前をつけてまとめること」
単位変換アプリでは、 「メートルをキロメートルに変換する」処理を関数にまとめます。
def convert_meter_to_km():
...
Python深掘りポイント
関数を使うと、
- コードが読みやすくなる
- 機能ごとに整理できる
- 後で機能を増やすときに再利用できる
というメリットがあります。
ファイル操作とは「外の世界にデータを残すこと」
今回の1日目では、 変換結果を convert_history.txt に保存します。
ポイントは次の3つ。
"a"→ 追記モードwith open(...)→ 自動で閉じてくれるwrite()→ 文字列を書き込む
単位変換アプリ 1日目の完成コード
ここまでの話をすべてまとめると、 次のような完成コードになります。
# 単位変換アプリ 1日目
# 目的:
# - メートルをキロメートルに変換する
# - 変換結果をファイルに保存する
# - 変数・条件分岐・繰り返し・関数・ファイル操作を体験する
def convert_meter_to_km():
"""
メートルをキロメートルに変換し、結果をファイルに保存する関数
"""
meter = float(input("メートルを入力してください: "))
kilometer = meter / 1000
print(f"{meter} m は {kilometer} km です。")
# ファイルに保存
with open("convert_history.txt", "a", encoding="utf-8") as f:
f.write(f"{meter} m → {kilometer} km\n")
print("変換結果を保存しました。convert_history.txt を確認してみてください。")
def main():
"""
アプリ全体の流れを管理する関数
"""
print("Python 単位変換アプリ 1日目")
print("メートルをキロメートルに変換してみましょう。")
print("------------------------------")
while True:
convert_meter_to_km()
answer = input("続けて変換しますか? (y/n): ")
if answer == "y":
print("もう1件変換します。")
print("------------------------------")
elif answer == "n":
print("単位変換アプリを終了します。おつかれさまでした。")
break
else:
print("y か n を入力してください。")
if __name__ == "__main__":
main()
Python1日目で本当に掴んでほしいこと
● 変数は「意味のある名前をつける」
単位変換では数値が中心なので、 変数名がわかりやすいほどコードが読みやすくなります。
● 条件分岐は「ユーザーの選択に応じて動きを変える」
y なら続ける、n なら終わる。 このシンプルな分岐がアプリらしさを生みます。
● 繰り返しは「アプリを継続的に使えるようにする」
1回で終わるプログラムから、 「何度でも使えるツール」へ変わる瞬間です。
● 関数は「コードを整理するための基本単位」
機能ごとに分けることで、 アプリが「部品の集合」として理解できるようになります。
● ファイル操作は「データを残すための技術」
変換履歴が残ることで、 アプリが“道具”として使えるようになります。
次のステップ(2日目の予告)
2日目では、この単位変換アプリをさらに育てて、
- 複数の単位変換(長さ・重さ・温度)
- メニュー形式(変換種類を選ぶ)
- 履歴を一覧表示する
という「単位変換アプリの基本形」を完成させていきます。


