Cititorii ca tine ajută la sprijinirea MUO. Când efectuați o achiziție folosind link-uri de pe site-ul nostru, este posibil să câștigăm un comision de afiliat. Citeşte mai mult.

Greutățile sunt una dintre cele mai comune măsuri pe care va trebui să le convertiți în viața de zi cu zi, deoarece diferite țări folosesc unități diferite. Uneori, o singură țară folosește unități diferite! O aplicație simplă de conversie a greutății poate fi foarte utilă.

Dezvoltarea unei astfel de aplicații este o modalitate simplă de a vă antrena abilitățile de programare Python. Învață să construiești o interfață grafică și poți începe în curând să construiești jocuri precum Tic Tac Toe, Snake și Flappy Bird.

Deci, cum puteți utiliza modulul Tkinter pentru a construi o aplicație de conversie a greutății folosind Python?

Modulul Tkinter

Tkinter este interfața standard Python pentru setul de instrumente Tk GUI, care vă permite să creați aplicații desktop. Oferă o varietate de widget-uri, cum ar fi butoane, etichete, casete de text și manageri de aspect, care facilitează dezvoltarea aplicațiilor fără prea mult efort.

instagram viewer

Unele dintre aplicațiile pe care le puteți crea cu Tkinter includ un calendar GUI, un ceas cu alarmă, un calculator, un blocnotes, o aplicație de vopsea și joc de test de tastare. Pentru a instala Tkinter în sistemul dvs., deschideți un terminal și rulați:

pip install tkinter

Cum să construiți o aplicație de conversie a greutății folosind Python

Puteți găsi codul sursă al aplicației de conversie a greutății folosind Python în aceasta Depozitul GitHub.

Importați modulul Tkinter. Inițializați instanța Tkinter și afișați fereastra rădăcină. Setați dimensiunile în pixeli și titlul ferestrei.

import tkinter la fel de tk
din tkinter import *

fereastra = Tk()
window.title(„Aplicația de conversie a greutății”)
window.geometry(„750x500”)

Definiți un widget de etichetă pentru a afișa antetul aplicației. Specificați fereastra părinte în care doriți să o plasați, textul pe care ar trebui să-l afișeze, stilul fontului și culoarea fontului. Organizați widget-urile în blocuri înainte de a le plasa în widget-ul părinte utilizând ambalaj() metodă.

Definiți o funcție, convert_to_gram(). Folosește obține() funcția de a prelua datele furnizate de utilizator. Înmulțiți valoarea cu 1000 pentru a o obține în grame. Creați o etichetă pentru a afișa greutatea în grame și alta pentru a afișa valoarea calculată.

Etichetă (fereastră, text=„Aplicația de conversie a greutății”,font=("Arial", 36 ),fg=„#A020F0”).ambalaj()
kg = tk. IntVar()

defconvert_to_gram():
kg1 = kg.get()
gram = plutitor (kg1) * 1000
Etichetă (fereastră, text=„Greutate în grame:”,font=("Arial", 18 )).ambalaj()
Etichetă (fereastră, text=gram, font=("Arial", 18 )).ambalaj()

În mod similar, definiți două funcții, convert_to_uncie() și convertiți în liră (). Efectuați aceiași pași ca și funcțiile de mai sus. Pentru a converti kilogramele în uncii, înmulțiți valoarea cu 35,274. Pentru a transforma în lire sterline, înmulțiți cu 2,20462.

defconvert_to_uncie():
kg1 = kg.get()
uncie = plutitor (kg1) * 35.274
Etichetă (fereastră, text=„Greutate în uncie:”,font=("Arial", 18 )).ambalaj()
Etichetă (fereastră, text=uncie, font=("Arial", 18 )).ambalaj()

defconvert_to_pound():
kg1 = kg.get()
lira = plutitor (kg1) * 2.20462
Etichetă (fereastră, text=„Greutate în lire:”,font=("Arial", 18 )).ambalaj()
Etichetă (fereastră, text=lire, font=("Arial", 18 )).ambalaj()

Declarați o etichetă care cere utilizatorului să introducă greutatea în kilograme. Definiți un widget de intrare pentru a primi informații de la utilizator Specificați fereastra părinte în care doriți să plasați acest widget, textvariable pentru a furniza o valoare unei variabile și stilul fontului. Organizați widget-ul utilizând managerul de pachete.

Definiți trei butoane pentru a converti greutatea în kg în grame, uncii și lire. Specificați fereastra în care doriți să le plasați, textul pe care ar trebui să-l afișeze, culoarea de fundal, culoarea fontului, funcția pe care ar trebui să o execute când faceți clic și stilul fontului. Organizați și specificați niște umplutură, astfel încât butoanele să nu se lipească unul de celălalt.

Etichetă (fereastră, text=„Introduceți greutatea în kg”,font=("Arial", 18 )).ambalaj()
Intrare (fereastră, textvariable=kg, font=("arial", '13')).ambalaj()

Buton (fereastră, text=„Conversia în Gram”,bg=„#A020F0”, fg=„#E0FFFF”, command=convert_to_gram, font=("arial", '13')).pachet (pady=10)
Buton (fereastră, text=„Conversia în uncie”,bg=„#A020F0”, fg=„#E0FFFF”,command=convert_to_uncie, font=("arial", '13')).pachet (pady=8)
Buton (fereastră, text=„Conversie în liră”,bg=„#A020F0”, fg=„#E0FFFF”,command=convert_to_pound, font=("arial", '13')).pachet (pady=8)

The mainloop() funcția îi spune lui Python să ruleze bucla de evenimente Tkinter și să asculte evenimente (cum ar fi apăsările de butoane) până când închideți fereastra.

window.mainloop()

Puneți tot codul împreună și aplicația dvs. de conversie a greutății este gata de utilizare.

Exemplu de rezultat al aplicației de conversie a greutății

La rularea programului, acesta afișează o fereastră cu antetul, o casetă de introducere și trei butoane împreună cu etichetele lor respective. La introducerea valorii ca 30 de kilograme și apăsând fiecare dintre butoane consecutiv, programul afișează greutățile convertite pe ecran.

30 de kilograme se transformă în 30.000 de grame, 1.058,22 uncii și 66,1385 de lire sterline.

Utilizarea Tkinter pentru a construi aplicații desktop

Tkinter este unul dintre cele mai simple și mai puternice module pentru a dezvolta aplicații GUI în Python. Suportă dezvoltarea multiplatformă, cu widget-uri personalizabile și gata de utilizare pentru a crea orice aplicație în câteva minute.

Dacă căutați alternative la Tkinter, puteți explora modulul PyQt. PyQt este o legare Python pentru Qt. Este o colecție de biblioteci C++ și instrumente de dezvoltare care oferă abstracții pentru interfețele grafice cu utilizatorul pe mai multe platforme. Puteți utiliza instrumente pentru crearea de rețele, expresii regulate, baze de date SQL, XML și multe altele.