Un dictionnaire est une ressource essentielle dans l’apprentissage d’une langue. Avec des définitions concises, il facilite grandement l’apprentissage et la compréhension d’une langue. Grâce à l’invention des smartphones, vous pouvez accéder à cette application inestimable en quelques minutes.
Construisez une application de dictionnaire en utilisant les modules Tkinter et PyMultiDictionary de Python pour obtenir la signification, les synonymes et les antonymes de n’importe quel mot.
Les modules Tkinter et PyMultiDictionary
Tkinter est la bibliothèque d’interface graphique standard de Python que vous pouvez utiliser pour créer des applications de bureau. Elle offre une variété de widgets tels que des boutons, des étiquettes et des zones de texte, ce qui vous permet de développer des applications en un rien de temps. Vous pouvez l’utiliser pour créer des utilitaires simples comme un correcteur d’orthographe, ou des jeux comme ce test de reconnaissance des couleurs.
Pour installer Tkinter, ouvrez un terminal et exécutez :
pip install tkinter
Vous pouvez utiliser le module PyMultiDictionary pour obtenir le sens, la traduction, les synonymes et les antonymes de mots dans 20 langues différentes. Pour installer PyMultiDictionary sur votre système, exécutez la commande suivante :
pip install PyMultiDictionary
Comment créer une application de dictionnaire en utilisant Python
Vous pouvez trouver le code source de l’application Dictionnaire dans ce dépôt GitHub.
Commencez par importer les modules Tkinter et PyMultiDictionary. Instanciez la classe MultiDictionary et initialisez la fenêtre racine. Définissez le titre et les dimensions de votre application.
from tkinter import *
from PyMultiDictionary import MultiDictionary
dictionary = MultiDictionary()
root = Tk()
root.title("Word Dictionary Using Python")
root.geometry("1250x750")
Définissez une fonction, dict(). Cette fonction définit le texte des étiquettes de signification, de synonyme et d’antonyme pour le résultat de chaque appel de méthode.
Transmettre la langue (« en » pour l’anglais) et le mot saisi par l’utilisateur à la fonction signification méthode. Cette méthode renvoie un tuple contenant le type de mot, sa définition dans le dictionnaire et sa description dans Wikipedia. Extrayez la deuxième valeur de ce tuple – la définition – et transmettez-la à la méthode Label.config().
Appeler la méthode synonyme et antonyme en passant les mêmes paramètres. Ces méthodes renvoient chacune une liste que vous pouvez passer directement à config().
def dict():
meaning.config(text=dictionary.meaning('en', word.get())[1])
synonym.config(text=dictionary.synonym('en', word.get()))
antonym.config(text=dictionary.antonym('en', word.get()))
Définir une étiquette pour afficher le nom de l’application. Définissez la fenêtre dans laquelle vous souhaitez placer l’étiquette, le texte qu’elle doit contenir, les styles de police et la couleur de la police. Utilisez l’outil pack() pour organiser l’étiquette en lui donnant un padding horizontal de 10.
Définir un cadre dans la fenêtre racine et une étiquette pour demander à l’utilisateur d’entrer un mot. Passer les paramètres comme précédemment et placer le widget sur le côté gauche. Définir un widget d’entrée pour donner à l’utilisateur une zone de saisie de mots. Ajoutez-le au widget cadre et définissez également ses styles de police. Organisez et ajoutez du rembourrage aux deux widgets.
Label(root, text="Word Dictionary Using Python", font=("Arial 36 bold"),
fg="Purple").pack(pady=10)
frame = Frame(root)
Label(frame, text="Type Word:", font=("Arial 28 bold")).pack(side=LEFT)
word = Entry(frame, font=("Arial 23 bold"))
word.pack()
frame.pack(pady=10)
Définissez un autre cadre contenant l’étiquette de signification et une autre étiquette qui affichera la signification lorsque vous cliquerez sur le bouton Soumettre. Placez-les dans le cadre que vous avez créé ci-dessus et définissez les styles de police appropriés. Utilisez la propriété wraplength pour diviser une longue phrase en plusieurs phrases. Sa dimension est définie en unités d’écran.
Organisez et ajoutez du rembourrage aux étiquettes et aux cadres.
frame1 = Frame(root)
Label(frame1, text="Meaning: ", font=("Arial 18 bold")).pack(side=LEFT)
meaning = Label(frame1, text="", font=("Arial 18"),wraplength=1000)
meaning.pack()
frame1.pack(pady=15)
Répétez les mêmes étapes pour les cadres et les étiquettes des synonymes et des antonymes.
frame2 = Frame(root)
Label(frame2, text="Synonym: ", font=("Arial 18 bold")).pack(side=LEFT)
synonym = Label(frame2, text="", font=("Arial 18"), wraplength=1000)
synonym.pack()
frame2.pack(pady=15)
frame3 = Frame(root)
Label(frame3, text="Antonym: ", font=("Arial 18 bold")).pack(side=LEFT)
antonym = Label(frame3, text="", font=("Arial 18"), wraplength=1000)
antonym.pack(side=LEFT)
frame3.pack(pady=20)
Définir un Soumettre bouton. Définissez la fenêtre parente dans laquelle vous souhaitez placer le bouton, le texte qu’il doit afficher, le style de police qu’il doit avoir et la fonction qu’il doit exécuter lorsqu’il est cliqué. Le bouton mainloop() indique à Python de lancer la boucle d’événements Tkinter et d’écouter les événements jusqu’à ce que vous fermiez la fenêtre.
Button(root, text="Submit", font=("Arial 18 bold"), command=dict).pack()
root.mainloop()
Assemblez tout ce code et votre application de dictionnaire est prête à être testée.
Exemple de sortie de l’application Dictionnaire
Lorsque vous exécutez le programme ci-dessus, la fenêtre de l’application s’affiche. En entrant un mot, il affiche sa signification et une liste de synonymes et d’antonymes.
Applications basées sur les mots en utilisant Tkinter
Tkinter est livré avec des classes permettant de gérer des fenêtres et des widgets pour créer des applications graphiques. Il s’agit notamment de boutons, de menus, de zones de texte et d’étiquettes de texte.
Une fois que vous l’avez construit, vous pouvez convertir votre fichier Python en un exécutable pour l’utiliser en tant qu’application logicielle.