ساخت ماشین حساب با پایتون + ویدیو + کد پروژه
سلام به دوستان عزیز میکرولرنی
امیدوارم که مثل همیشه حالتون عالی باشه. نوبت رسید به یکی دیگه از پروژه های جذاب پایتون. قراره در این پروژه به ساخت ماشین حساب با پایتون بپردازیم. برای ساخت ماشین حساب با پایتون نیازه تا از یک واسط گرافیکی GUI مثل ماژول tkinter استفاده کنیم. اینطوری یک ابزاری می سازیم که دیگران هم بتونن ازش استفاده کنند و فقط مخصوص خودمون و برنامه نویس ها نباشه.
این ماشین حساب می تونه عملیات پایه مثل جمع، تفریق، ضرب و تقسیم را انجام بده و طبیعتا برای شما میتونه یک ایده توسعه نرم افزار باشه. ما با ایجاد ساختار اصلی ماشین حساب، از جمله پنجره و طرح، شروع می کنیم و سپس به اجرای عملکرد دکمه ها می ریم.
در طول پروژه کد ماشین حساب در پایتون را نوشته و نحوه استفاده از ویجتهای tkinter مانند دکمهها و برچسبها و نحوه مدیریت رویدادها مانند کلیک دکمهها را یاد خواهیم گرفت. در پایان این پروژه، شما درک کاملی از نحوه ایجاد یک ماشین حساب با استفاده از Python و tkinter خواهید داشت و مهارت ایجاد برنامه های پیچیده تر در آینده را خواهید داشت. پیشنهاد می کنم حتما ویدیوی پروژه از بالای مقاله ببینید. اگر دوست داشتید توضیحات این پروژه را به صورت متنی هم بخونید با ادامه مقاله هم راه میکرولرن باشید.
توجه کنید که این پروژه برای افراد مبتدی مناسب نیست و این افراد بهتره اول دوره رایگان آموزش پایتون را مشاهده کنند. خب بریم که شروع کنیم.
فهرست مطالب
هدف از ساخت ماشین حساب با پایتون چیست؟
پیاده سازی یک ماشین حساب گرافیکی برای دانشجویان پایتون یک پروژه عالی است که به دلایل مختلفی می تواند مورد توجه قرار بگیرد. در مرحله اول، می تواند روشی عملی و تعاملی برای یادگیری برنامه نویسی پایتون در اختیار زبان آموزان قرار دهد.
این پروژه می تواند به زبان آموزان کمک کند تا مهارت های خود را در برنامه نویسی پایتون رشد دهند و در عین حال به آنها کمک کند تا اصول اولیه برنامه نویسی رابط کاربری گرافیکی (GUI) را درک کنند. علاوه بر این، ماشین حساب های گرافیکی ابزار محبوبی هستند که بسیاری از مردم به صورت روزانه از آن استفاده می کنند. بنابراین، توسعه یک ماشین حساب گرافیکی می تواند تجربه عملی در ساخت نرم افزارهایی که به طور گسترده مورد استفاده قرار می گیرند و کاربردهای واقعی دارند را، در اختیار زبان آموزان قرار دهد.
هدف از پروژه ساخت ماشین حساب با پایتون کمک به زبان آموزان برای دستیابی به درک عمیق تری از مفاهیم برنامه نویسی پایتون مانند توابع، حلقه ها و برنامه نویسی رابط کاربری گرافیکی با ساخت یک برنامه کاربردی است. علاقه مندان به این پروژه، در مورد کتابخانه Tkinter که به شما امکان ایجاد رابط کاربری گرافیکی می دهد و همین طور پیاده سازی عملیات ریاضی در پایتون، یاد می گیرند.
این پروژه به شما یاد می دهد که چگونه یک مسئله پیچیده را به اجزای کوچکتر تقسیم کرده و از پایتون برای حل هر جزء استفاده کنید. شما همچنین در مورد اشکال زدایی(debugging)، تست و اصلاح برنامه تجربه خوبی کسب می کنید.
به طور کلی، این پروژه یک شروع عالی برای افرادی است که می خواهند مهارت های برنامه نویسی پایتون خود را توسعه دهند و در مورد برنامه نویسی GUI اطلاعات بیشتری کسب کنند. همچنین یک راه عالی برای به کارگیری مفاهیم و تکنیک هایی است که که قبلا فرا گرفته شده است.
با ایجاد یک ماشین حساب گرافیکی، شما می توانید اعتماد به نفس خود را در برنامه نویسی افزایش دهید و برای یادگیری موضوعات پیشرفته با انگیزه تر شوید.
مراحل ساخت ماشین حساب با پایتون
این پروژه شامل دو بخش مهم است – رابط کاربری گرافیکی (GUI) و بخش منطق ریاضی. رابط کاربری گرافیکی همان چیزی است که کاربران برای تعامل با ماشین حساب می بینند و از آن استفاده می کنند، و باید کاربر پسند، از نظر گرافیکی جذاب و خوش دست باشد. بخش منطق ریاضی ماشین حساب شامل اجرای عملیات ریاضی است که ماشین حساب می تواند انجام دهد. در ادامه هر دو بخش را معرفی می کنیم.
کد واسط گرافیکی ماشین حساب در پایتون
بخش گرافیکی ماشین حساب شامل طراحی و پیاده سازی یک رابط کاربری است که به کاربران اجازه می دهد تا با ماشین حساب تعامل داشته باشند. این یکی از جنبه های مهم پروژه است زیرا رابط کاربری گرافیکی (GUI) چیزی است که کاربران می بینند و از آن برای وارد کردن داده ها و انجام محاسبات استفاده می کنند.
همانطور که گفته شد، رابط کاربری گرافیکی باید کاربرپسند باشد. یعنی باید شامل تمام دکمه های استاندارد و عملکردهای یک ماشین حساب معمولی، مانند اعداد، عملگرها، دکمه پاک کردن و دکمه برابر باشد.
برای ایجاد رابط کاربری گرافیکی، می توانید از کتابخانه Tkinter که یک کتابخانه استاندارد رابط کاربری گرافیکی در پایتون است استفاده کنید. Tkinter مجموعهای از ابزارها و ویجتها را برای ساخت رابطهای کاربری گرافیکی، مانند فریمها، برچسبها، دکمهها و جعبههای متن ارائه میکند.
هنگامی که رابط کاربری گرافیکی ایجاد شد، شما باید آن را به طور کامل آزمایش کنید تا مطمئن شوید که همانطور که انتظار می رود کار می کند و بدون هرگونه اشکال است.
کدنویسی منطق ریاضی ماشین حساب
بخش منطق ریاضی ماشین حساب شامل اجرای عملیات ریاضی است که ماشین حساب می تواند انجام دهد. ماشین حساب باید قادر به انجام عملیات حسابی اساسی مانند جمع، تفریق، ضرب و تقسیم باشد. علاوه بر این، باید از توابع ریاضی پیشرفته تری مانند جذر، توان، لگاریتم و توابع مثلثاتی پشتیبانی کند که البته ما در این پروژه به آن نپرداخته ایم ولی به عنوان یک پیشنهاد می توانید خودتان روی آن کار کرده و ماشین حساب را توسعه دهید.
یکی از راههای پیادهسازی منطق ماشینحساب، ایجاد یک سری توابع است که عملیات مختلف ریاضی را انجام میدهند. هر تابع می تواند ورودی های لازم (مانند دو عملوند برای جمع) را دریافت کند، محاسبه را انجام دهد و نتیجه را برگرداند. سپس شما می توانید این توابع را در رابط کاربری گرافیکی ادغام کنید تا وقتی کاربران روی دکمه های مربوطه کلیک می کنند، تابع مربوطه فراخوانی شود و نتیجه روی صفحه نمایش داده شود. توجه کنید که جزئیات این موارد در ویدیو به طور کامل گفته شده است.
به طور کلی، بخش های گرافیکی و عملکردی ماشین حساب، دو جنبه مهم پروژه هستند. با اجرای موفقیت آمیز هر دو بخش، شما یک ماشین حساب گرافیکی کاملاً کاربردی خواهید داشت که می تواند طیف گسترده ای از عملیات ریاضی را انجام دهد. این پروژه فرصتی عالی برای شما فراهم می کند تا یک برنامه کاربردی بسازید و آن را با دیگران به اشتراک بگذارید.
کد ماشین حساب در پایتون
import tkinter as tk
class Calculator(tk.Tk):
def __init__(self):
super().__init__()
self.title("Calculator")
self.geometry("480x620")
self.result = tk.Entry(self, font=("Arial", 36))
self.result.grid(row=0, column=0, columnspan=4, padx=10,
pady=10, ipadx=40, ipady=20, sticky=tk.W+tk.E)
self.result.config(justify=tk.LEFT)
self.grid_columnconfigure(0, weight=1)
button_frame = tk.Frame(self)
button_frame.grid(row=1, column=0, columnspan=4, padx=10, pady=10)
self.create_button("1", button_frame, 0, 0, lambda: self.add_number(1))
self.create_button("2", button_frame, 0, 1, lambda: self.add_number(2))
self.create_button("3", button_frame, 0, 2, lambda: self.add_number(3))
self.create_button("4", button_frame, 1, 0, lambda: self.add_number(4))
self.create_button("5", button_frame, 1, 1, lambda: self.add_number(5))
self.create_button("6", button_frame, 1, 2, lambda: self.add_number(6))
self.create_button("7", button_frame, 2, 0, lambda: self.add_number(7))
self.create_button("8", button_frame, 2, 1, lambda: self.add_number(8))
self.create_button("9", button_frame, 2, 2, lambda: self.add_number(9))
self.create_button("0", button_frame, 3, 1, lambda: self.add_number(0))
self.create_button("+", button_frame, 0, 3,
lambda: self.add_operation("+"))
self.create_button("-", button_frame, 1, 3,
lambda: self.add_operation("-"))
self.create_button("*", button_frame, 2, 3,
lambda: self.add_operation("*"))
self.create_button("/", button_frame, 3, 3,
lambda: self.add_operation("/"))
self.create_button("=", button_frame, 3, 2, self.calculate, "green")
self.create_button("C", button_frame, 3, 0, self.clear, "red")
def create_button(self, text, frame, row, column, command, bg="white"):
button = tk.Button(frame, text=text, command=command,
font=("Arial", 18), width=5, height=3)
button.config(bg=bg)
button.grid(row=row, column=column, padx=10, pady=10)
def add_number(self, number):
current = self.result.get()
current += str(number)
self.result.delete(0, tk.END)
self.result.insert(0, current)
def add_operation(self, operator):
current = self.result.get()
current += operator
self.result.delete(0, tk.END)
self.result.insert(0, current)
def calculate(self):
current = self.result.get()
self.result.delete(0, tk.END)
self.result.insert(0, eval(current))
def clear(self):
self.result.delete(0, tk.END)
if __name__ == "__main__":
calculator = Calculator()
calculator.mainloop()
نتیجه گیری
خسته نباشید عرض می کنم به شما دوستان میکرولرنی عزیز که تا انتهای این مقاله همراه ما بودید. امیدوارم که این مقاله و ویدیو کمکی بوده باشه تا عمق بیشتری به دانسته های خودتون بدید و با اعتماد به نفس بیشتری برنامه نویسی کنید. حمایت شما از میکرولرن همیشه باعث دلگرمی ما بوده و هست. شما می تونید با به اشتراک گذاشتن این مقاله با دوستانتون هم کمکی به دیگران کنید و هم به ما برای تولید محتوا انرژی بدید. در انتها پیشنهاد میکنم دو تا از پروژه های جذاب میکرولرن به یعنی آموزش ساخت بازی دوز در پایتون و ساخت ساعت با پایتون را مطالعه کنید.
درباره احسان عبداللهی
مدیر و موسس میکرولرن | برنامه نویسی پاسخی ظریف به یک نیاز در دنیای واقعی هست.
نوشته های بیشتر از احسان عبداللهی6 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
میتونیم اون دف اینیت اولی رو ننویسیم؟
درود
اون متد زمانی که یک شئ از کلاس میسازید استفاده میشه. بنابراین اگر حذفش کنید برنامه دیگه کار نمی کنه.
چرا کد ها کپی نمیشن اخه
کپی برداری ممنوعه. بنویسید تا یاد بگیرید. 😉
بعد از یاد گرفتن مقدمات پایتون خیلی دوست داشتم که با پایتون یه پروژه یا کار متفاوت انجام بدم. پروژه ماشین حسابی که شما آموزش دادید اولین تمرین جدی من برای پایتون بود و خیلی آموزنده. لطفا پروژه های بیشتری آموزش بدید تا افرادی که مثل من مبتدی هستند بتونند سریع تر کارهای کاربردی با پایتون انجام بدن.
حتما آموزش های ما را دنبال کنید. پروژه های زیادی در دست طراحی داریم که به زودی منتشر میشن.