Probléme valeur d'une variable
Bonjour ,
J'affiche un menu en cascade avec une liste de fichiers à inclure (Tkinter):
Code:
1 2
| for file in os.listdir('./fichiers'):
menu.add_command(label=file,command=lambda:self.load(file)) |
Donc ici je demande simplement d'ajouter le titre de tout les fichiers présents dans le dossier "fichiers" à un menu en cascade.
Le problème c'est lorsque que je clique sur un fichier pour le charger ( grâce à ma méthode load) Il me charge toujours le dernier , je pense que la variable file dans "command=..." comme elle n'est appelé qu'a la fin du chargement elle a pour valeur sa dernière valeur transmise en locurrence le nom de mon dernier fichier et ça expliqueré mon probléme mais je me demande comment le résoudre , je pensais à crée a chaque lecture de la boucle une nouvelle variable qui contiendré la valeur de la variable actuel de la boucle de file.... C'est dur a expliquer à l'écrit j'espère que vous avez compris (je croit que c'est un cas fréquent) Pouvez-vous m'aider , merci! :cry:
J'ai mis mon topic dans 'Général Python' , mon code contient une commande Tkinter mais mon problème ne concerne pas cette commande c'est plutôt un probléme de variable ....