Le poids est l’une des mesures les plus courantes que vous devrez convertir dans la vie de tous les jours, car différents pays utilisent différentes unités. Parfois, un même pays utilise différentes unités ! Une simple application de conversion de poids peut s’avérer très utile.
Le développement d’une telle application est un moyen simple d’entraîner vos compétences en programmation Python. Apprenez à construire une interface graphique et vous pourrez bientôt commencer à créer des jeux comme Tic Tac Toe, Snake et Flappy Bird.
Comment utiliser le module Tkinter pour créer une application de conversion de poids en Python ?
Le module Tkinter
Tkinter est l’interface Python standard de la boîte à outils Tk GUI qui vous permet de créer des applications de bureau. Il offre une variété de widgets comme des boutons, des étiquettes, des boîtes de texte et des gestionnaires de mise en page qui facilitent le développement d’applications sans trop d’efforts.
Certaines des applications que vous pouvez construire avec Tkinter incluent un calendrier GUI, un réveil, une calculatrice, un bloc-notes, une application de peinture, et un jeu de test de frappe. Pour installer Tkinter dans votre système, ouvrez un terminal et exécutez :
pip install tkinter
Comment construire une application de conversion de poids en utilisant Python
Vous pouvez trouver le code source de l’application de conversion de poids en utilisant Python dans ce dépôt GitHub.
Importez le module Tkinter. Initialiser l’instance Tkinter et afficher la fenêtre racine. Définissez les dimensions en pixels et le titre de la fenêtre.
import tkinter as tk
from tkinter import *
window = Tk()
window.title("Weight Converter App")
window.geometry("750x500")
Définissez un widget d’étiquette pour afficher l’en-tête de l’application. Spécifiez la fenêtre parent dans laquelle vous souhaitez le placer, le texte qu’il doit afficher, le style et la couleur de la police. Organisez les widgets en blocs avant de les placer dans le widget parent à l’aide de la fonction pack() méthode.
Définir une fonction, convert_to_gram(). Utilisez la méthode get() pour récupérer les données fournies par l’utilisateur. Multipliez la valeur par 1000 pour l’obtenir en grammes. Créez une étiquette pour afficher le poids en grammes et une autre pour afficher la valeur calculée.
Label(window,text="Weight Converter App",font=("Arial", 36 ),fg='#A020F0').pack()
kg = tk.IntVar()
def convert_to_gram():
kg1 = kg.get()
gram = float(kg1) * 1000
Label(window,text="Weight in grams:",font=("Arial", 18 )).pack()
Label(window,text=gram, font=("Arial", 18 )).pack()
De même, définissez deux fonctions, convert_to_ounce() et convertir en livre(). Effectuez les mêmes étapes que les fonctions ci-dessus. Pour convertir des kilogrammes en onces, multipliez la valeur par 35,274. Pour convertir en livres, multipliez par 2,20462.
def convert_to_ounce():
kg1 = kg.get()
ounce = float(kg1) * 35.274
Label(window,text="Weight in ounce:",font=("Arial", 18 )).pack()
Label(window,text=ounce,font=("Arial", 18 )).pack()
def convert_to_pound():
kg1 = kg.get()
pound = float(kg1) * 2.20462
Label(window,text="Weight in pound:",font=("Arial", 18 )).pack()
Label(window,text=pound, font=("Arial", 18 )).pack()
Déclarez une étiquette demandant à l’utilisateur d’entrer le poids en kilogrammes. Définissez un widget d’entrée pour obtenir une entrée de l’utilisateur Spécifiez la fenêtre parent dans laquelle vous voulez placer ce widget, textvariable pour fournir une valeur à une variable, et le style de police. Organisez le widget à l’aide du gestionnaire de paquets.
Définissez trois boutons pour convertir le poids en kg en gramme, once et livre. Spécifiez la fenêtre dans laquelle vous souhaitez les placer, le texte qu’ils doivent afficher, la couleur de fond, la couleur de la police, la fonction qu’ils doivent exécuter lorsqu’ils sont cliqués et le style de police. Organisez et spécifiez un certain rembourrage, afin que les boutons ne collent pas les uns aux autres.
Label(window,text="Enter the Weight in Kgs",font=("Arial", 18 )).pack()
Entry(window,textvariable=kg, font=('arial', '13')).pack()
Button(window,text="Convert to Gram",bg="#A020F0", fg="#E0FFFF", command=convert_to_gram, font=('arial', '13')).pack(pady=10)
Button(window,text="Convert to Ounce",bg="#A020F0", fg="#E0FFFF",command=convert_to_ounce, font=('arial', '13')).pack(pady=8)
Button(window,text="Convert to Pound",bg="#A020F0", fg="#E0FFFF",command=convert_to_pound, font=('arial', '13')).pack(pady=8)
Le site mainloop() indique à Python d’exécuter la boucle d’événements de Tkinter et d’écouter les événements (comme les pressions sur les boutons) jusqu’à ce que vous fermiez la fenêtre.
window.mainloop()
Mettez tout le code ensemble et votre application de conversion de poids est prête à être utilisée.
Exemple de sortie de l’application de conversion de poids
Lorsque le programme est lancé, il affiche une fenêtre avec l’en-tête, une boîte de saisie et trois boutons avec leurs étiquettes respectives. En entrant la valeur de 30 kilogrammes et en appuyant consécutivement sur chacun des boutons, le programme affiche les poids convertis à l’écran.
30 kilogrammes se convertissent en 30,000 grammes, 1,058.22 onces, et 66.1385 livres.
Utiliser Tkinter pour créer des applications de bureau
Tkinter est l’un des modules les plus faciles et les plus puissants pour développer des applications graphiques en Python. Il supporte le développement multiplateforme, avec des widgets personnalisables et prêts à l’emploi pour créer n’importe quelle application en quelques minutes.
Si vous cherchez des alternatives à Tkinter, vous pouvez explorer le module PyQt. PyQt est une liaison Python pour Qt. Il s’agit d’une collection de bibliothèques C++ et d’outils de développement qui offrent des abstractions pour les interfaces utilisateur graphiques sur de nombreuses plateformes. Vous pouvez utiliser des outils pour les réseaux, les expressions régulières, les bases de données SQL, XML, etc.