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 40 41 42 43 44 45 46 47 48 49 50 51 52
|
from tkinter import *
import random
class Tirage(object):
def __init__(self):
self.root = Tk()
self.root.geometry('300x100')
self.root.title('Tirage au sort')
Label(self.root, text='Choix classe:').grid(row=1, column=1)
Button(self.root, text="Tirer au sort", command = self.tirer).grid(row=2, column=1)
self.entree = Entry(self.root, width=14)
self.entree.grid(row=1, column=2)
self.root.mainloop()
def liste_des_mots(self):
'''recoit un nom de classe
cherche le fichier correspondant et extrait une liste'''
self.groupe = (str(self.entree.get()),'.txt')#définit groupe comme tuple
le_fichier = ''.join(self.groupe)#définit le_fichier comme str issu du tuple groupe
d = open(le_fichier, encoding='utf-8')
mon_texte = d.read()
self.ma_liste = []
mon_mot = ''
for d in range(0, len(mon_texte)):
if mon_texte[d].isalpha():
mon_mot = mon_mot + mon_texte[d]
#mon_mot = mon_mot.lower()
else:
if mon_mot not in self.ma_liste and mon_mot !='':
self.ma_liste.append(mon_mot)
mon_mot = ''
self.ma_liste.sort()
return self.ma_liste
def tirer(self):
liste = self.liste_des_mots()
choisis = []
self.resultat = random.choice(liste)
Label(self.root, text=self.resultat).grid(row=2, column=2)
choisis.append(self.resultat)
liste.remove(self.resultat)
if len(choisis)>5:
liste = liste + choisis
choisis=[]
print(choisis,liste,len(choisis))
if __name__ == '__main__':
f= Tirage() |
Partager