mój kod jest następująca:Nie Funkcja Zmiana zmienna globalna
done = False
def function():
for loop:
code
if not comply:
done = True #let's say that the code enters this if-statement
while done == False:
function()
Z jakiegoś powodu, gdy mój kod wchodzi if, to nie wyjść z pętli while po to się robi z funkcji().
ale jeśli ja kodować to tak:
done = False
while done == False:
for loop:
code
if not comply:
done = True #let's say that the code enters this if-statement
... to wyjście z pętli while. Co tu się dzieje?
Upewniłem się, że mój kod wchodzi do instrukcji if. Nie uruchomiłem jeszcze debuggera, ponieważ mój kod ma wiele pętli (dość duża tablica 2D) i zrezygnowałem z debugowania, ponieważ było to bardzo uciążliwe. Jak to się stało, że "zrobione" nie zmienia się, gdy jest w funkcji?
Wiele dzisiejszych pytań zmiennych globalnych Python. – icktoofay
Dziękuję wam! Nie mogę uwierzyć, że to było takie proste, ale z pewnością jest to inny dotyk niż Java/C++ – cYn