Bonjour à tous,
Je voudrais savoir si on peut désempiler un appel récursif par code ou instruction.
Je vous propose un exemple ce sera peut être plus simple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
def aff():
    global flag
    for i in range(10):
        print (i)
        if i==7 and flag==0:
            flag=1
            aff()
flag=0        
aff()
après avoir affiché 1234567 puis 123456789 la fonction reprend l'appel originel et termine par 8 9.
Ce que je voudrais , si c'est possible , c'est que dès que la boucle à été effectuée complètement (ici au 3ème appel ), on puisse vider les appels précédents c'est à dire dans notre cas qu'on n'ait pas 89 .Ce n'est pas seulement une sortie qui éviterait 89 mais un effaçage de la pile pour qu'au prochain appel de la fonction ,on reparte de zéro, une sorte de reset de la fonction.
J'espère m'être fait comprendre
Merci de m'avoir consacré de votre temps