J'ai un programme où l'utilisateur devrait être capable de choisir et de choisir des commandes à partir d'une liste déroulante. Dans cette liste, il y a aussi une commande repeat, qui fait essentiellement ce que fait une boucle for, donc toutes les commandes entre repeat
et end repeat
doivent être bouclées le nombre de fois indiqué. Voir image:Fonction de répétition Python qui appelle des fonctions
Maintenant, je ne sais pas encore comment gérer les programatically répétées fonctions. Je sais que python gère les classes comme des objets, alors peut-être que cela peut aider, mais je suis un peu perdu.
Actuellement j'envoie une liste de chaînes au thread qui gère l'exécution des commandes, et qui est analysée et chaque commande est exécutée.
def command(self, item):
if item.startswith('Pan'):
... do stuff
elif item.startswith('...'):
... do something else
Comment pourrais-je réécrire cela pour que repeat
est une fonction appelable/méthode?
Lorsque l'utilisateur clique sur « Répéter: 150 » vous devrez analyser les lignes suivantes jusqu'à ce que « fin répéter » et envoyer toutes ces informations en une seule étape à l'autre fil. Je ne vois pas comment l'autre thread pourrait savoir quelles commandes doivent être répétées. Je ne vois pas comment "réécrire" la méthode "commande" va vous y parvenir. –