Bonjour à tous,
Je suis encore débutant en python et je me pose encore des questions, si quelqu'un peut m'éclairer ?
J'ai fait 2 petits scripts pour reproduire les cas : J'ai un capteur dont je lis sa mémoire et j'enregistre les résultats
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 from tkinter import tix, Frame,Button,Label,Entry, Listbox, Radiobutton, IntVar class Capteur(Frame): def __init__(self,parent): Frame.__init__(self, parent,bd=8) self.registre1 = 0 self.registre2 = 0 self.registre3 = 0 self.b1 = Button(self, text="lecture_des_registres",command = self.lecture_des_registres) self.b1.grid(row=1, column=0) self.b2 = Button(self, text="enregistrement_des_registres",command = self.enregistrement_des_registres) self.b2.grid(row=1, column=1) def lecture_des_registres(self): print("lecture") self.registre1 = 8 self.registre2 = 88 self.registre3 = 888 def enregistrement_des_registres(self): print("ecriture") with open("resultat.csv", "a") as fichier: fichier.write(str(self.registre1)+','+str(self.registre2)+','+str(self.registre3)+'\n') if __name__=="__main__": app = tix.Tk() appareil = Capteur(app) appareil.grid() app.mainloop()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 from tkinter import tix, Frame,Button,Label,Entry, Listbox, Radiobutton, IntVar class Capteur(Frame): def __init__(self,parent): Frame.__init__(self, parent,bd=8) self.registre1 = 0 self.registre2 = 0 self.registre3 = 0 self.b1 = Button(self, text="lecture_des_registres",command = self.lecture_des_registres) self.b1.grid(row=1, column=0) def lecture_des_registres(self): print("lecture") self.registre1 = 1 self.registre2 = 11 self.registre3 = 111 if __name__=="__main__": app = tix.Tk() appareil = Capteur(app) appareil.grid() def Enregistrement_resultat(): print("ecriture") with open("resultat2.csv", "a") as fichier: fichier.write(str(appareil.registre1)+','+str(appareil.registre2)+','+str(appareil.registre3)+'\n') b1 = Button(app,text="Enregistrement_resultat",command = Enregistrement_resultat) b1.grid(row=1, column=0) app.mainloop()
Qu'elle est la convention en ce qui concerne la récupération des attribues de mon objet ?
- on les récupère dans la boucle principale ?
- on les récupère dans l'objet ?
- il y a-t-il un autre moyen plus rapide de récupérer leurs valeurs ?
PS : J'aurai pu facilement me passer de la POO mais je l'ai fait ainsi car par la suite je pourrai avoir plusieurs capteurs. Les 2 méthodes fonctionnent mais je sais que mon manque d'expérience me fera peut-être partir vers le mauvais choix et qui au final se transformera en![]()
![]()
Merci d'avance
Bonne journée
Partager