آموزش ساخت ماشین حساب با پایتون
در حوزه برنامهنویسی، توانایی ایجاد ابزارهایی که محاسبات را به طور مؤثر انجام میدهند، مهارتی ضروری است. یکی از پروژههای اساسی که برنامه نویسان مبتدی پایتون خیلی دوست دارند آن را انجام دهند ساخت ماشین حساب با پایتون است. در این مطلب آموزشی از مجله مکتوب این بار قصد داریم که با آموزش ساخت ماشین حساب به عنوان تمرین برنامه نویسی پایتون بپردازیم. در این آموزش دو رویکرد متفاوت برای ساخت ماشین حساب با Python در نظر گرفتهایم و دو نوع کد پایتون ماشین حساب را ارزیابی خواهیم کرد.
مراحل انجام ساخت ماشین حساب با پایتون
ساخت ماشین حساب با پایتون شامل چندین مرحله است. در اینجا یک راهنمای جامع برای کمک به شما در ایجاد یک ماشین حساب اولیه آورده شده است:
ورودی و نمایش کاربر:
- واردکردن ماژولها و کتابخانه های پایتون در صورت لزوم.
- نمایش پیام خوش آمدگویی و دستورالعمل برای کاربر.
- تنظیم رابط ورودی عملگر اولیه از سوی کاربر.
- تنظیم رابط تنظیم عملیات خواسته شده از سوی کاربر.
- تنظیم رابط عملگر ثانویه از سوی کاربر.
انجام عملیات حسابی:
- انجام عملیات بر اساس عملیات انتخاب شده، عملیات حسابی مناسب روی اطلاعات و اعداد ورودی کاربر
- ذخیرهسازی نتیجه
رسیدگی به خطا:
- انجام مدیریت خطا برای رسیدگی به سناریوهایی مانند ورودی نامعتبر یا تقسیم بر صفر. به عنوان مثال، بررسی میشود که آیا اعداد ورودی دارای مقادیر عددی معتبر هستند و آیا عملیات انتخاب شده معتبر است یا خیر.
نمایش نتیجه:
- نمایش نتیجه محاسبات به کاربر
در ادامه به بررسی کد پایتون ماشین حساب خواهیم پرداخت.
پیشنهاد مطالعه: کد پایتون آماده به همراه معرفی چندین منبع سورس کد پایتون
نحوه ساخت ماشین حساب با پایتون
در زیر تمامی مراحل ساخت ماشین حساب با پایتون به صورت قدمبهقدم آورده شده است.
مرحله 1: واردکردن ماژولها و ساخت پنجره اصلی ماشین حساب پایتون:
import tkinter as tk
# Create the main application window
root = tk.Tk()
root.title("Calculator")
در این مرحله کتابخانه tkinter را وارد میکنیم که ابزارهایی برای ایجاد رابط کاربری گرافیکی ارائه میدهد. سپس پنجره اصلی برنامه را با استفاده از ()tk.Tk ایجاد کرده و عنوان آن را روی “Calculator” قرار میدهیم.
مرحله 2: ایجاد تابع برای انجام محاسبات:
def calculate():
try:
num1 = float(entry_num1.get())
num2 = float(entry_num2.get())
operation = operator_var.get()
if operation == "+":
result.set(num1 + num2)
elif operation == "-":
result.set(num1 - num2)
elif operation == "*":
result.set(num1 * num2)
elif operation == "/":
result.set(num1 / num2)
except ValueError:
result.set("Invalid input")
در قطعه کد فوق تابعی به نام calculate تعریف میکنیم که محاسبات حسابی واقعی را انجام میدهد. این تابع در ساخت ماشین حساب با پایتون اعداد ورودی را از فیلدهای Entry (entry_num1 و entry_num2) بازیابی میکند، عملیات انتخاب شده را از OptionMenu (operator_menu) دریافت میکند و بر اساس عملیات انتخاب شده، نتیجه را محاسبه میکند. اگر ValueError رخ دهد (به عنوان مثال، اگر ورودی یک عدد معتبر نباشد)، نتیجه را روی Invalid input یا ورودی نامعتبر تنظیم میکند.
مرحله 3: ایجاد عناصر رابط کاربری:.
# Welcome message label
welcome_label = tk.Label(root, text="به این آموزش از مکتب خونه خوش آمدید", font=("Helvetica", 16))
welcome_label.pack(pady=10)
# Entry fields for numbers
entry_num1 = tk.Entry(root)
entry_num1.pack(pady=5)
entry_num2 = tk.Entry(root)
entry_num2.pack(pady=5)
# Dropdown menu for selecting operation
operator_var = tk.StringVar()
operator_var.set("+") # Default operation is addition
operator_menu = tk.OptionMenu(root, operator_var, "+", "-", "*", "/")
operator_menu.pack(pady=5)
# Button to perform calculation
calculate_button = tk.Button(root, text="Calculate", command=calculate)
calculate_button.pack(pady=10)
# Result label
result = tk.StringVar()
result.set("")
result_label = tk.Label(root, textvariable=result)
result_label.pack()
در کد پایتون ماشین حساب فوق، ما عناصر رابط کاربری گرافیکی ماشین حساب با پایتون را ایجاد میکنیم:
- Welcome_label: پیام خوش آمدگویی را نمایش میدهد.
- enter_num1 و entry_num2: فیلدهای ورودی که کاربر میتواند اعداد را وارد کند.
- operator_menu: منوی کشویی برای انتخاب عملیات حسابی.
- calcula_button: دکمهای که تابع محاسبه را فعال میکند.
- result_label: نتیجه محاسبهشده را نمایش میدهد.
در کد ساخت ماشین حساب با پایتون بالا ما از pack() برای قرار دادن این عناصر در پنجره اصلی برنامه استفاده میکنیم. برای ذخیره عملیات محاسباتی انتخاب شده از ()StringVar operator_var استفاده میشود.
پیشنهاد مطالعه: آموزش تبدیل فایل پایتون به exe به صورت قدم به قدم
مرحله 4: اجرای حلقه رویداد:
root.mainloop()
در نهایت، حلقه رویداد اصلی را با استفاده ازroot.mainloop شروع میکنیم. این حلقه به تعاملات کاربر گوش داده و پنجره GUI را تا زمانی که کاربر آن را ببندد در حال اجرا نگه میدارد. خروجی ماشین حساب پایتون بالا به صورت زیر است:
با ترکیب این مراحل، ما یک ماشین حساب اولیه با یک رابط کاربرپسند ایجاد کردهایم که میتواند محاسبات حسابی را انجام دهد. برای مشاهده عملکرد ماشین حساب میتوانید کدهای فوق را اجرا کنید. همچنین میتوانید به راحتی آن را بر اساس ترجیحات و نیازهای خود سفارشی کنید.
نمونه کد پایتون ماشین حساب
در اینجا مثال دیگری از ایجاد یک ماشین حساب با پایتون و این بار با استفاده از رویکردی متفاوت آورده شده است که در آن از یک طرحبندی شبکهای برای دکمهها استفاده میکنیم و عملیات حسابی را با استفاده از توابع جداگانه برای وضوح پیادهسازی میکنیم. ایجاد یک رابط کاربری گرافیکی کامل (GUI) برای یک ماشین حساب شامل استفاده از یک کتابخانه GUI است.
یکی از کتابخانههای محبوب برای ایجاد برنامه های رابط کاربری گرافیکی در پایتون Tkinter است. در اینجا یک راهنمای گام به گام برای ساخت یک ماشین حساب اولیه با استفاده از Tkinter آورده شده است:
مرحله 1: واردکردن کتابخانهها با دستور Import در پایتون:
import tkinter as tk
from tkinter import ttk
مرحله 2: ایجاد پنجره اصلی ماشین حساب:
root = tk.Tk()
root.title("Calculator")
مرحله 3: ایجاد ویجت ورودی برای نمایش محاسبات:
display = ttk.Entry(root, font=("Helvetica", 24))
display.grid(row=0, column=0, columnspan=4)
مرحله 4: ایجاد تابع برای مدیریت کلیک دکمه:
def button_click(value):
current = display.get()
display.delete(0, tk.END)
display.insert(0, current + value)
مرحله 5: ایجاد دکمههای شبکه مانند:
buttons = [
('7', 1, 0), ('8', 1, 1), ('9', 1, 2), ('/', 1, 3),
('4', 2, 0), ('5', 2, 1), ('6', 2, 2), ('*', 2, 3),
('1', 3, 0), ('2', 3, 1), ('3', 3, 2), ('-', 3, 3),
('0', 4, 0), ('.', 4, 1), ('=', 4, 2), ('+', 4, 3)
]
for (text, row, col) in buttons:
button = ttk.Button(root, text=text, command=lambda t=text: button_click(t))
button.grid(row=row, column=col, padx=10, pady=10)
مرحله 6: ایجاد تابع برای انجام محاسبات ماشین حساب در پایتون:
def calculate():
try:
result = eval(display.get())
display.delete(0, tk.END)
display.insert(0, str(result))
except Exception as e:
display.delete(0, tk.END)
display.insert(0, "Error")
مرحله 7: ایجاد دکمه “C” (پاک کردن) :
clear_button = ttk.Button(root, text="C", command=lambda: display.delete(0, tk.END))
clear_button.grid(row=5, column=0, columnspan=3, padx=10, pady=10)
equal_button = ttk.Button(root, text="=", command=calculate)
equal_button.grid(row=5, column=3, padx=10, pady=10)
مرحله 8: اجرای حلقه رویداد برنامه:
root.mainloop()
خروجی برنامه بالا به صورت زیر است:
کد پایتون ماشین حساب بالا یک GUI ساده با استفاده از Tkinter است. هر مرحله به طور خلاصه در زیر کد توضیح داده شده است. تابع lambda برای ارسال متن دکمه به تابع ‘button_click’ هنگام کلیک کردن استفاده میشود. به یاد داشته باشید مثال بالا فقط یک ماشین حساب اولیه را ارائه میدهد و سناریوهای پیچیدهتری مانند پرانتز یا توابع ریاضی پیشرفته را بررسی نمیکند. علاوه بر این، مدیریت خطا برای مسائل احتمالی مانند تقسیم بر صفر یا عبارتهای نامعتبر را شامل نمیشود، بنابراین توصیه میشود. ساخت ماشین حساب نوعی پروژه ساده پایتون است که شما را با مهارتهای ابتدایی برای کدنویسی پایتون آشنا میکند. به امید اینکه مطلب فوق در رابطه با ساخت ماشین حساب با پایتون برای شما مفید بوده باشد.
پیشنهاد مطالعه: چگونه پایتون را شروع کنیم؟ مسیر یادگیری پایتون از مبتدی تا پیشرفته
آموزش پایتون
اگر به فکر یادگیری برنامه نویسی پایتون هستید ابتدا باید اصول برنامه نویسی و مقدمات پایتون را یاد بگیرید. برای کمک به یادگیری پایتون در مکتب خونه انواع دوره آموزش پایتون موجود است که به کاربران کمک میکند به سادهترین شکل ممکن پایتون را بیاموزند. از طریق صفحه آموزش پایتون مکتب خونه میتوانید انواع دورههای موجود برای پایتون را ببینید. در مکتب خونه انواع آموزش پایتون با رویکردهای مختلفی مانند رویکردهای زیر وجود دارد:
- آموزش طراحی سایت پایتون
- آموزش هوش مصنوعی و یادگیری ماشین با پایتون
- آموزش ساخت بازی با پایتون
- آموزش علم داده با پایتون
- و غیره
از طریق آموزشهای بالا میتوانید مهارت خود را در پایتون به سطح حرفهای برسانید.