در این آموزش، یک برنامه مبدل دما با زبان برنامه نویسی پایتون ایجاد خواهید کرد که به کاربر کمک می کند تا درجه حرارت را به درجه فارنهایت وارد کند و آن دما را به درجه سانتیگراد تبدیل کند. مراحل و توابع برنامه را برای شما شرح خواهیم داد تا خودتان بتوانید برنامه را بیشتر توسعه دهید.
نکاتی که نیاز دارید برای این برنامه بدانید:
۱-تسلط متوسط بر زبان برنامه نویسی پایتون
۲-کار با توابع در پایتون
۳-آشنایی با Tkinter
نوشتن برنامه به زبان پایتون
ابتدا Tkinter را import و نام آن را تعیین می کنیم
import tkinter as tk
window = tk.Tk()
window.title("Temperature Converter")
تعریف باکس ورودی برای گرفتن اطلاعات از کاربر
frm_entry = tk.Frame(master=window)
ent_temperature = tk.Entry(master=frm_entry, width=۱۰)
lbl_temp = tk.Label(master=frm_entry, text="\N{DEGREE FAHRENHEIT}")
انتخاب مکان مناسب برای باکس ورودی
ent_temperature.grid(row=۰, column=۰, sticky="e")
lbl_temp.grid(row=۰, column=۱, sticky="w")
تعریف دکمه ای برای تایید اطلاعات توسط کاربر و جاگذاری آن
btn_convert = tk.Button(
master=window,
text="\N{RIGHTWARDS BLACK ARROW}"
)
lbl_result = tk.Label(master=window, text="\N{DEGREE CELSIUS}")
frm_entry.grid(row=۰, column=۰, padx=۱۰)
btn_convert.grid(row=۰, column=۱, pady=۱۰)
lbl_result.grid(row=۰, column=۲, padx=۱۰)
در این قسمت تابعی را تعریف می کنیم که کار تبدیل درجه فارانهایت را به درجه سیلیوس انجام دهد
def fahrenheit_to_celsius():
"""Convert the value for Fahrenheit to Celsius and insert the
result into lbl_result.
"""
fahrenheit = ent_temperature.get()
celsius = (۵/۹) * (float(fahrenheit) - ۳۲)
lbl_result["text"] = f"{round(celsius, ۲)} \N{DEGREE CELSIUS}"
تابع را به دستور کلید convert اضافه می کنیم
btn_convert = tk.Button(
master=window,
text="\N{RIGHTWARDS BLACK ARROW}",
command=fahrenheit_to_celsius # <--- Add this line
)
همانطور که در ابتدا گفته شد این برنامه تنها جهت آشنایی شما با پایتون و Tkinter است و سعی کنید با توجه به خلاقیت خود تغییرات مورد نظرتان را در این برنامه ایجاد کنید
کد کامل برنامه
Code:
import tkinter as tk
def fahrenheit_to_celsius():
"""Convert the value for Fahrenheit to Celsius and insert the
result into lbl_result.
"""
fahrenheit = ent_temperature.get()
celsius = (۵/۹) * (float(fahrenheit) - ۳۲)
lbl_result["text"] = f"{round(celsius, ۲)} \N{DEGREE CELSIUS}"
# Set-up the window
window = tk.Tk()
window.title("Temperature Converter")
window.resizable(width=False, height=False)
# Create the Fahrenheit entry frame with an Entry
# widget and label in it
frm_entry = tk.Frame(master=window)
ent_temperature = tk.Entry(master=frm_entry, width=۱۰)
lbl_temp = tk.Label(master=frm_entry, text="\N{DEGREE FAHRENHEIT}")
# Layout the temperature Entry and Label in frm_entry
# using the .grid() geometry manager
ent_temperature.grid(row=۰, column=۰, sticky="e")
lbl_temp.grid(row=۰, column=۱, sticky="w")
# Create the conversion Button and result display Label
btn_convert = tk.Button(
master=window,
text="\N{RIGHTWARDS BLACK ARROW}",
command=fahrenheit_to_celsius
)
lbl_result = tk.Label(master=window, text="\N{DEGREE CELSIUS}")
# Set-up the layout using the .grid() geometry manager
frm_entry.grid(row=۰, column=۰, padx=۱۰)
btn_convert.grid(row=۰, column=۱, pady=۱۰)
lbl_result.grid(row=۰, column=۲, padx=۱۰)
# Run the application
window.mainloop()
در ادامه می توانید مطالعه کنید
- آموزش رابط گرافیکی Tkinter (بخش اول)
- بازی سنگ، کاغذ، قیچی با پایتون
- ساعت زنگ دار با GUI در پایتون
- نحوه بررسی اتصال اینترنت کاربر در پایتون
- محاسبه BMI با پایتون
- تفاوت بین روتر و فایروال - مهر ۱۰, ۱۴۰۳
- مسیریابی استاتیک در ویندوز - مهر ۸, ۱۴۰۳
- پروتکل SNMP - شهریور ۱۵, ۱۴۰۳