Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m323:learningunits:lu02:byvaluebyreference [2025/11/17 08:33] – Externe Bearbeitung 127.0.0.1 | modul:m323:learningunits:lu02:byvaluebyreference [2026/08/25 09:00] (aktuell) – Interaktive Animation zum Speichermodell ergänzt admin | ||
|---|---|---|---|
| Zeile 4: | Zeile 4: | ||
| In Python ist es wichtig zu verstehen, wie Daten zwischen Funktionen und Variablen übergeben werden. Python verwendet sowohl '' | In Python ist es wichtig zu verstehen, wie Daten zwischen Funktionen und Variablen übergeben werden. Python verwendet sowohl '' | ||
| + | |||
| + | ===== Animation: Was im Speicher wirklich passiert ===== | ||
| + | |||
| + | Die folgende Animation zeigt Schritt für Schritt, was beim Aufruf einer Funktion im Arbeitsspeicher geschieht – einmal mit einer Zahl ('' | ||
| + | |||
| + | Klicken Sie sich mit **Weiter** durch beide Beispiele und vergleichen Sie insbesondere **Schritt 3**: Bis dorthin sind die beiden Abläufe identisch – erst dort trennen sich die Wege. | ||
| + | |||
| + | {{url> | ||
| ===== By Value ===== | ===== By Value ===== | ||
| Zeile 31: | Zeile 39: | ||
| | | ||
| | | ||
| - | if name == 'main': | + | if __name__ |
| a = 5 | a = 5 | ||
| new_value = modify_value(a) | new_value = modify_value(a) | ||
| Zeile 39: | Zeile 47: | ||
| Hier bleibt die ursprüngliche Variable '' | Hier bleibt die ursprüngliche Variable '' | ||
| + | |||
| + | <WRAP center round info 90%> | ||
| + | **Genauer betrachtet: | ||
| + | </ | ||
| ===== By Reference ===== | ===== By Reference ===== | ||
| Zeile 64: | Zeile 76: | ||
| | | ||
| | | ||
| - | if name == 'main': | + | if __name__ |
| my_list = [1, 2, 3] | my_list = [1, 2, 3] | ||
| modify_list(my_list) | modify_list(my_list) | ||
| Zeile 87: | Zeile 99: | ||
| Tipp: Wenn Sie mutable Objekte verwenden, aber unerwartete Änderungen vermeiden möchten, sollten Sie in Erwägung ziehen, eine Kopie des Objekts zu erstellen, bevor Sie es an eine Funktion übergeben. | Tipp: Wenn Sie mutable Objekte verwenden, aber unerwartete Änderungen vermeiden möchten, sollten Sie in Erwägung ziehen, eine Kopie des Objekts zu erstellen, bevor Sie es an eine Funktion übergeben. | ||
| </ | </ | ||
| + | |||
| + | ---- | ||
| + | {{tag> | ||
| + | [[https:// | ||
| + | |||