Pythonで計算機を作成する方法は、大きく分けて2つあります。
1つは、GUI(Graphical User Interface)を用いて、ボタンや入力フォームなどの画面要素を組み合わせて計算機を構築する方法です。もう1つは、コマンドラインから入力された数値を処理して計算結果を表示する方法です。
GUIを用いた計算機の作成は、PythonのGUIライブラリであるTkinterを用いることで実現できます。Tkinterを用いると、ボタンや入力フォームなどの画面要素を簡単に作成することができます。以下に、Tkinterを用いて作成した簡易的な計算機のコードを示します。
import tkinter as tk
# ウィンドウの作成
window = tk.Tk()
# 入力フォームの作成
entry1 = tk.Entry(window)
entry1.pack()
# ボタンの作成
button1 = tk.Button(window, text="+")
button1.pack()
button2 = tk.Button(window, text="-")
button2.pack()
button3 = tk.Button(window, text="*")
button3.pack()
button4 = tk.Button(window, text="/")
button4.pack()
# 計算結果の表示
label = tk.Label(window)
label.pack()
# イベントハンドラの登録
def add():
x = float(entry1.get())
y = float(entry2.get())
label.config(text=str(x + y))
def subtract():
x = float(entry1.get())
y = float(entry2.get())
label.config(text=str(x - y))
def multiply():
x = float(entry1.get())
y = float(entry2.get())
label.config(text=str(x * y))
def divide():
x = float(entry1.get())
y = float(entry2.get())
label.config(text=str(x / y))
# ボタンにイベントハンドラを登録
button1.config(command=add)
button2.config(command=subtract)
button3.config(command=multiply)
button4.config(command=divide)
# ウィンドウの表示
window.mainloop()
このコードでは、ウィンドウ、入力フォーム、ボタン、計算結果の表示ラベルを作成しています。また、各ボタンのイベントハンドラとして、加算、減算、乗算、除算の処理を登録しています。
コマンドラインから入力された数値を処理して計算結果を表示する方法は、Pythonの標準ライブラリであるsysを用いることで実現できます。sys.argvを用いると、コマンドラインから入力された引数を取得することができます。以下に、sysを用いて作成した簡易的な計算機のコードを示します。
import sys
# 入力された数値を取得
x = float(sys.argv[1])
y = float(sys.argv[2])
# 計算結果を表示
print(x + y)
このコードでは、コマンドラインから2つの数値を入力として受け取り、加算の結果を表示しています。
どちらの方法で計算機を作成するかについては、自分の好みや目的によって選択するとよいでしょう。GUIを用いた計算機は、視覚的に分かりやすく、操作しやすいというメリットがあります。一方、コマンドラインから入力された数値を処理して計算結果を表示する方法は、プログラムのサイズが小さくなるというメリットがあります。