Was Sie hier tun, ist die folgende:
- Sie den Wert zuweisen
0
auf die Variable total_hours
- Sie berechnen die Werte für die Variablen
hour
, days
und week
durch die Variable total_hours
mit mit dem Wert 0
und ordnen Sie ihnen auch die Ergebnisse zu
- Sie ändern den Wert der Variablen
total_hours
- Sie drucken die Werte von
hour
, days
und weeks
wie sie in 2
berechnet wurden
besser zu verstehen, was passiert man ein bisschen mehr mit print
spielen sollten:
hour = 1
day = 24
week = 168
part_day = 8
total_hours = int(0)
hours = total_hours % 168
days = ((total_hours % 168) // 7)
weeks = total_hours // 168
def sleep():
global total_hours
global week
total_hours += week
print 'values before `sleep`', hours, days, weeks, total_hours
sleep()
print 'values after `sleep`', hours, days, weeks, total_hours
Wenn Sie Wollen Sie (neu) die Werte berechnen, die von total_hours
abhängen, könnten Sie etwas tun:
hour = 1
day = 24
week = 168
part_day = 8
total_hours = int(0)
hours = total_hours % 168
days = ((total_hours % 168) // 7)
weeks = total_hours // 168
def recalc():
global weeks, days, hours, total_hours
hours = total_hours % 168
days = ((total_hours % 168) // 7)
weeks = total_hours // 168
def sleep():
global total_hours, week
total_hours += week
def show_time():
global hours, days, weeks
print(hours, days, weeks)
sleep()
recalc()
show_time()
Sie haben den Wert von 'Stunden',' Tage' oder 'Wochen' nie geändert. Alles, was du geändert hast, ist 'total_hours'. Die Variablen sind Werten zugeordnet, nicht den Bruchteilen von 'total_hours'. – zondo
Aber wenn ich den Wert von total_hours selbst ändern, funktioniert es ... –
Wenn Sie es ändern, bevor Sie die anderen Variablen erstellen, ja. Wenn ich dich Eric nenne und meinem Nachbarn sage, er soll Eric etwas geben, wird er es dir geben. Wenn ich ihm sage, dass mein Bruder Eric ist, dann wird er das Ding meinem Bruder geben, nicht dir. Wenn ich ihm nachher sage, dass mein Bruder Eric ist, ändert das nichts an dem, was er bereits getan hat. Du wirst es immer noch nicht haben. – zondo