Der Fehler ist zu denken, dass lokale Variablen in einer Funktion rueckwirken wuerden auf globalen Zustand. Das waere eine Katastrophe, wenn es passieren wuerde - du schreibst eine neue Funktion, und hast den gleichen Namen, und ploetzlich kracht alles.
Die Loesung in diesem Fall ist ganz einfach: Funktionen geben ihre Ergebnisse per return zurueck, und bekommen ihre Argument. Also so etwa:
Code: Alles auswählen
def tuwas(a, b):
return a*2, b + 3
def main():
a = 10
b = 20
a, b = tuwas(a, b)
print(a, b)
if __name__ == "__main__":
main()
In Zukunft auch bitte code-tags verwenden, damit die in Python wichtigen Einrueckungen erhalten bleiben.