Ich habe kürzlich mit der Programmierung begonnen. Alles funktioniert gut, aber dieses Stück Code fasziniert mich seit langer Zeit.Warum ändert sich die globale Variable auch nach der globalen Festlegung nicht?
Hier ist mein Code.
addon = 20
startup = 50 + addon
def click():
global addon, startup
addon *= 2
print addon, startup
click()
click()
click()
click()
click()
click()
click()
click()
click()
click()
Das ist mein Ausgang: -
40 70
80 70
160 70
320 70
640 70
1280 70
2560 70
5120 70
10240 70
20480 70
Dies ist, was ich erwartet hatte: -
40 90
80 170
160 330
320 650
640 1290
1280 2570
2560 5130
5120 10250
10240 20490
20480 40970
Ich bin einfach nicht bekommen. wenn jeder Aufruf von click
die globale Variable addon
aktualisiert, sollte sie auch startup
Variable aktualisieren. Aber weiß nicht, warum es nicht funktioniert.
@Sanatan: Wie 'aktualisiert startup' werden sollte? Sollte es auch mit "2" multipliziert werden? – kamwo
eigentlich war es 'Startup = 50 + Addon' nicht' Startup = 50'. Bitte helfen Sie. –
Wo ist der Code, der den Start ändert. Sie stellen es auf 70 ein und ändern es nie. –