「Pythonを始めたばかりだけど、何を作ればいいのか分からない」
そんな初心者の方におすすめなのが、電卓アプリの自作です。
本記事では、Python初心者でも安心して取り組めるように、コード付きでGUI電卓を作る方法を丁寧に解説します。使用するのは標準ライブラリの「tkinter」。追加インストールも不要で、簡単にGUIが作れるのが魅力です。
この記事を読めば、Pythonの基本・GUIの構造・イベント処理の考え方が一気に学べます!
Pythonで電卓アプリを作る理由
結論
初心者がPythonの基礎とGUIを学ぶには、電卓アプリが最適です。
理由
電卓は操作がシンプルなうえ、基本的な演算処理・ボタン処理・画面表示がすべて詰まっています。
「作って動かす楽しさ」を体験しながら、変数の使い方、関数の定義、GUI部品の配置まで学べます。
具体例
• GUIで数値を表示する「ラベル・エントリ」の使い方が学べる
• 四則演算のロジックをPythonで実装する練習になる
• 実用性があるので達成感を感じやすい
再主張
電卓アプリは、最初のPython GUI作品として非常におすすめです。
tkinterでGUIを作るための準備
結論
Pythonには標準でGUIライブラリ「tkinter」が含まれているため、すぐに始められます。
手順
1. Pythonをインストールしていない方は、公式サイト(https://www.python.org)から最新版をダウンロードしてください。
2. エディタ(VSCode、PyCharmなど)を用意します。
3. 以下のようにtkinterが動くか確認します。
import tkinter as tk
root = tk.Tk()
root.title("テスト")
root.mainloop()
画面に小さなウィンドウが出れば成功です。
再主張
tkinterは環境構築不要で、GUIにすぐ挑戦できる点が魅力です。
電卓アプリの基本構成を理解しよう
結論
電卓アプリは「表示エリア」「ボタン」「演算処理」の3要素で構成されます。
ポイント
• 表示エリア(Entry):入力・結果を表示
• ボタン(Button):数字・演算子・クリアなどを押す部分
• 演算処理(関数):ボタンに応じて処理を行う
簡易構成図
+----------------+
| Entry |
+----------------+
| 7 | 8 | 9 | / |
| 4 | 5 | 6 | * |
| 1 | 2 | 3 | - |
| 0 | C | = | + |
再主張
部品の役割を理解することが、完成への近道です。
実際にコードを書いて動かそう
結論
基本的な電卓アプリは、約50行のコードで実装可能です。
コード例(一部抜粋)
import tkinter as tk
def click(event):
btn_text = event.widget["text"]
if btn_text == "=":
try:
result = str(eval(entry.get()))
entry.delete(0, tk.END)
entry.insert(tk.END, result)
except:
entry.delete(0, tk.END)
entry.insert(tk.END, "エラー")
elif btn_text == "C":
entry.delete(0, tk.END)
else:
entry.insert(tk.END, btn_text)
root = tk.Tk()
root.title("電卓")
entry = tk.Entry(root, width=20, font=("Arial", 20), bd=5)
entry.grid(row=0, column=0, columnspan=4)
buttons = [
["7", "8", "9", "/"],
["4", "5", "6", "*"],
["1", "2", "3", "-"],
["0", "C", "=", "+"]
]
for i, row in enumerate(buttons):
for j, btn_text in enumerate(row):
btn = tk.Button(root, text=btn_text, width=5, height=2, font=("Arial", 18))
btn.grid(row=i+1, column=j)
btn.bind("<Button-1>", click)
root.mainloop()
再主張
シンプルなコードで、見た目も動作も立派なアプリが完成します。
より便利な機能を追加してみよう
結論
関数電卓風の機能や履歴保存機能を追加することで、さらに学びが深まります。
追加アイデア
• 小数点(.)ボタンを追加
• 負の数や括弧対応
• 計算履歴をリストに表示
• テーマカラーを変更
拡張例コード(小数点追加)
# "." をボタン配列に追加
["0", ".", "C", "="]
再主張
簡単なアプリでも工夫次第で本格的になります。
FAQ(よくある質問)
Q1. エラーで止まったときの対処法は?
A. try-except構文を使えば、エラー表示に切り替えることができます。
Q2. 日本語対応は可能ですか?
A. 表示のテキストを日本語にすれば対応可能です。文字コードもUTF-8を指定しましょう。
Q3. スマホで動きますか?
A. 基本はPC用ですが、Kivyなど他ライブラリを使えばスマホ対応もできます。
まとめ
• 電卓アプリは初心者に最適なPython GUI入門プロジェクト
• tkinterはインストール不要で使える標準ライブラリ
• 最小構成のコードで「入力・処理・出力」が一通り学べる
• 機能追加やデザイン変更でレベルアップできる