Browse Source

Version retravailler

master
Maxence 3 weeks ago
parent
commit
d2d1f3a22a
  1. 90
      Projets_note.py

90
Projets_note.py

@ -1,55 +1,22 @@
import tkinter as tk import tkinter as tk
# Configuration de la fenêtre
screen = tk.Tk()
screen.title("Calcul de notes")
screen.minsize(300, 300)
screen.maxsize(300, 300)
# Initialisation de la liste
lst_nombre = []
# Différents textes présents (ou non) sur la page
#Zone d'entrée pour les nombres
welcome_txt = tk.Label(text="Veuillez entrer des nombres, pour connaitre \n la note la plus basse, la plus haute et la moyenne ! \n Penser à bien vérifier vos nombre avant le calcul !")
welcome_txt.place(relx=0.5, y=70, anchor="center")
zone_texte = tk.Entry(width = 20)
zone_texte.place(relx=0.5, rely=0.5, anchor="center")
warning = tk.Label(text="")
warning.place(relx=0.5, rely=0.4, anchor="center")
txt_note_min = tk.Label(text="")
txt_note_min.place(x=0, y=10)
txt_note_max = tk.Label(text="")
txt_note_max.place(x=170, y=10)
txt_moyenne = tk.Label(text="")
txt_moyenne.place(relx=0.5, y=40, anchor="center")
# Vérifie les entrées # Vérifie les entrées
def Verif(): def Valid():
"Remplace le nombre a virgule par un float exploitable par python et le rajoute à la liste des notes"
global lst_nombre global lst_nombre
global zone_texte
# Pour être sûr que l'utilisateur ne fait pas n'importe quoi # Pour être sûr que l'utilisateur ne fait pas n'importe quoi
try:
nombre = zone_texte.get()
# On part du principe que l'utilisateur ne sait pas qu'il faut utiliser des points à la place des virgules # On part du principe que l'utilisateur ne sait pas qu'il faut utiliser des points à la place des virgules
nombre = entrée_notes.get()
nombre = nombre.replace("," , ".") nombre = nombre.replace("," , ".")
nombre = float(nombre) nombre = float(nombre)
print(nombre) print(nombre)
lst_nombre.append(nombre) lst_nombre.append(nombre)
warning.config(text="") txt_lst_notes.config(text=f"Voici les notes {lst_nombre} !")
except ValueError:
warning.config(text="Invalide")
# Calcule la note max, min et la moyenne # Calcule la note max, min et la moyenne
def Calcul(): def Calcul():
"Calcul et affiche la note la plus haute, la plus basse, et la moyenne du groupe"
global lst_nombre global lst_nombre
try:
total = 0 total = 0
nombre_notes = 0 nombre_notes = 0
print(lst_nombre) print(lst_nombre)
@ -66,21 +33,50 @@ def Calcul():
txt_note_min.config(text=f"Note la plus basse : {note_min}") txt_note_min.config(text=f"Note la plus basse : {note_min}")
txt_note_max.config(text=f"Note la plus haute : {note_max}") txt_note_max.config(text=f"Note la plus haute : {note_max}")
txt_moyenne.config(text=f"Moyenne du groupe : {moyenne}") txt_moyenne.config(text=f"Moyenne du groupe : {moyenne}")
# Si quelq'un fait calculer une liste vide
except IndexError:
txt_note_min.config(text="")
txt_note_max.config(text="")
txt_moyenne.config(text="")
# Effacer les valeurs de la liste # Effacer les valeurs de la liste
def Effacer(): def Effacer():
"Efface toutes les notes pour une nouvelle série de notes"
global lst_nombre global lst_nombre
lst_nombre = [] lst_nombre = []
txt_lst_notes.config(text=f"Voici les notes {lst_nombre} !")
txt_note_min.config(text="")
txt_note_max.config(text="")
txt_moyenne.config(text="")
# Configuration de la fenêtre
screen = tk.Tk()
screen.title("Calcul de notes")
screen.minsize(300, 300)
screen.maxsize(300, 300)
# Initialisation de la liste
lst_nombre = []
# Différents textes présents (ou non) sur la page
#Zone d'entrée pour les nombres
welcome_txt = tk.Label(text="Veuillez entrer des nombres, pour connaitre \n la note la plus basse, la plus haute et la moyenne ! \n Penser à bien valider vos nombre avant le calcul !")
welcome_txt.place(relx=0.5, y=70, anchor="center")
entrée_notes = tk.Entry(width = 20)
entrée_notes.place(relx=0.5, rely=0.5, anchor="center")
txt_note_min = tk.Label(text="")
txt_note_min.place(x=0, y=10)
txt_note_max = tk.Label(text="")
txt_note_max.place(x=170, y=10)
txt_moyenne = tk.Label(text="")
txt_moyenne.place(relx=0.5, y=40, anchor="center")
txt_lst_notes = tk.Label(text="")
txt_lst_notes.place(relx=0.5, rely=0.4, anchor="center")
# Différents bouton qui renvoie aux trois fonctions # Différents bouton qui renvoie aux trois fonctions
bouton_verif = tk.Button(width = 8, height = 3, text = "Vérifier", command=Verif) bouton_verif = tk.Button(width = 8, height = 3, text = "Vérifier", command=Valid)
bouton_verif.place(relx=0.5, rely=0.7, anchor="center") bouton_verif.place(relx=0.5, rely=0.7, anchor="center")
bouton_calcul = tk.Button(width = 8, height = 3, text = "Calcul", command=Calcul) bouton_calcul = tk.Button(width = 8, height = 3, text = "Calcul", command=Calcul)
@ -89,4 +85,8 @@ bouton_calcul.place(relx=0.7, rely=0.8,)
bouton_calcul = tk.Button(width = 8, height = 3, text = "Effacer", command=Effacer) bouton_calcul = tk.Button(width = 8, height = 3, text = "Effacer", command=Effacer)
bouton_calcul.place(x=22, rely=0.8,) bouton_calcul.place(x=22, rely=0.8,)
help(Valid)
help(Calcul)
help(Effacer)
screen.mainloop() screen.mainloop()
Loading…
Cancel
Save