Hallo,
als Neuling in Python beschäftigt mich ein Problem:
Ich kann einer Variable mittels einer Funktion einen Wert zuweisen, also:
a=funktion(b,c)
Kann ich auch mehrere Variable in einer Funktion ändern, also in etwa in dieser Art:
a=2
b="haus"
c=4
funktion()
nach Ausführen der Funktion sollen sich die Werte von a, b, und c verändert haben.
Bibliotheken, Module und Variable
@haidi: Können ja — falls sich die Namen auf Modulebene befinden, machen sollte man das nicht. Das fängt schon damit an das Variablen nicht auf Modulebene existieren sollten. Da gehören nur Konstanten, Funktionen, und Klassen hin.
Du kannst zwar nur einen Wert aus einer Funktion zurückgeben, aber dieser eine Wert kann ja auch eine Liste oder ein Tupel sein und damit mehrere Werte beinhalten. Und mit „tuple unpacking“ (was eigentlich „iterable unpacking“ heissen müsste) bekommt man das syntaktisch auch ganz nett geschrieben:
Du kannst zwar nur einen Wert aus einer Funktion zurückgeben, aber dieser eine Wert kann ja auch eine Liste oder ein Tupel sein und damit mehrere Werte beinhalten. Und mit „tuple unpacking“ (was eigentlich „iterable unpacking“ heissen müsste) bekommt man das syntaktisch auch ganz nett geschrieben:
Code: Alles auswählen
def something_returning_a_coordinate(name):
if name == 'home':
return (42, 23)
# ...
def main():
x, y = something_returning_a_coordinate('home')
print x # → 42
print y # → 23
if __name__ == '__main__':
main()