Bonjour à tous, voici mon souci :

def roulerchambre():
c = Frame(root)
choix2 = Button(c, text="Tourner la chambre", command=labelTourner)
labelTourner = Label(c, text="Vous tournez la chambre...")
time.sleep(4)
labelTourner.config(text="Chambre tournée !")
choix2.pack()
labelTourner.pack()
c.pack()

Ici, je cherche à créer une fonction qui retourne une phrase (label) pendant 4 secondes puis en retourne une autre juste après. Mais "command=labelTourner" n'est pas considéré comme un code correct par le compilateur (local variable 'labelTourner' referenced before assignment). Comment dois-je faire svp ?

Par ailleurs si vous en avez le temps et l'envie :

def tirer():
c = Frame(root)
choix1 = Button(c, text="Tirer", command=hasard(tirer))
choix1.grid(column=6, columnspan=2, row=35, sticky="NSEW")
choix1.pack()
c.pack()

def hasard(event):
listeBruits = ["CLICK !", "BOOM !", "CLACK !", "CLYCK !", "CLOCK !", "CLUCK !"]
global tirer
tirer = random.shuffle(listeBruits)
texte = str(listeBruits)
return texte

Ici, je souhaite créer un bouton "Tirer" qui, dès qu'on clique dessus, retourne/affiche l'une des chaînes de caractères au hasard stockée dans "listeBruits". Pouvez-vous me dire si mon code est correct ? Mon terminal m'indique qu'ici tout est correct, j'ai mon bouton Tirer mais ..... il ne fait rien mon bouton

Voilà ! En l'attente de réponses de votre part !