def fxn(L):
"""
"""
global L = 2
L = 1
fxn(L)
print(L)
Ich habe eine Funktion wie die oben genannte. Angenommen, ich brauche die Funktion, um die globale Variable innerhalb der Funktion so zu ändern, dass ich nach dem Aufruf von fxn (L) L drucke. Ich am Ende mit der 2 statt 1.Python: Funktion zum Ändern einer globalen Variable, die auch Parameter ist
Gibt es eine Möglichkeit, dies zu tun? Ich kann globale L in der Funktion nicht benutzen, weil L auch ein Parameter ist.
* Warum * müssen Sie den gleichen Namen für beide verwenden? Ich konnte sehen, warum Sie nicht in der Lage sind, das Globale zu ändern, aber warum können Sie den Parameter nicht ändern? –
^^ Ja. Ich verstehe auch nicht, warum Sie das 'L'-Argument, das Sie in Ihrer' fxn'-Methodendeklaration definieren, nicht ändern können. – idjaw
Da Sie gefragt haben, habe ich die Antwort mit einem Weg hinzugefügt, um dies zu erreichen. Sie sollten jedoch nicht die gleiche Variable wie die globale Variable und das funktionale Argument für die Funktion verwenden, die diese globale Variable verwendet. –