「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が動くか確認します。
1 2 3 4 | import tkinter as tk root = tk.Tk() root.title( "テスト" ) root.mainloop() |
画面に小さなウィンドウが出れば成功です。
再主張
tkinterは環境構築不要で、GUIにすぐ挑戦できる点が魅力です。
電卓アプリの基本構成を理解しよう
結論
電卓アプリは「表示エリア」「ボタン」「演算処理」の3要素で構成されます。
ポイント
• 表示エリア(Entry):入力・結果を表示
• ボタン(Button):数字・演算子・クリアなどを押す部分
• 演算処理(関数):ボタンに応じて処理を行う
簡易構成図
1 2 3 4 5 6 7 | +----------------+ | Entry | +----------------+ | 7 | 8 | 9 | / | | 4 | 5 | 6 | * | | 1 | 2 | 3 | - | | 0 | C | = | + | |
再主張
部品の役割を理解することが、完成への近道です。
実際にコードを書いて動かそう
結論
基本的な電卓アプリは、約50行のコードで実装可能です。
コード例(一部抜粋)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | 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() |
再主張
シンプルなコードで、見た目も動作も立派なアプリが完成します。
より便利な機能を追加してみよう
結論
関数電卓風の機能や履歴保存機能を追加することで、さらに学びが深まります。
追加アイデア
• 小数点(.)ボタンを追加
• 負の数や括弧対応
• 計算履歴をリストに表示
• テーマカラーを変更
拡張例コード(小数点追加)
1 2 | # "." をボタン配列に追加 [ "0" , "." , "C" , "=" ] |
再主張
簡単なアプリでも工夫次第で本格的になります。
FAQ(よくある質問)
Q1. エラーで止まったときの対処法は?
A. try-except構文を使えば、エラー表示に切り替えることができます。
Q2. 日本語対応は可能ですか?
A. 表示のテキストを日本語にすれば対応可能です。文字コードもUTF-8を指定しましょう。
Q3. スマホで動きますか?
A. 基本はPC用ですが、Kivyなど他ライブラリを使えばスマホ対応もできます。
まとめ
• 電卓アプリは初心者に最適なPython GUI入門プロジェクト
• tkinterはインストール不要で使える標準ライブラリ
• 最小構成のコードで「入力・処理・出力」が一通り学べる
• 機能追加やデザイン変更でレベルアップできる