Veränderliche Standardargumente korrigieren

In Python kann die Verwendung von veränderlichen Objekten wie Listen als Standardargumente in Funktionen zu unerwartetem Verhalten führen. Das liegt daran, dass der Standardwert für ein Funktionsargument nur einmal ausgewertet wird, nämlich beim Definieren der Funktion. Dadurch wird das veränderliche Standardargument zwischen allen Funktionsaufrufen geteilt.
Um dieses Problem zu umgehen, sollte die Funktion so angepasst werden, dass None als Standardwert für das Listenargument verwendet wird. Innerhalb der Funktion wird dann eine leere Liste initialisiert, wenn dieses Argument None ist.
Du sollst die Funktion mutable_default_argument aus der vorherigen Übung modifizieren. Diese Funktion nimmt zwei Parameter: eine Ganzzahl n und eine Liste lst, die standardmäßig None ist.
Die Funktion soll prüfen, ob lst None ist, und falls ja, sie als leere Liste initialisieren. Anschließend soll die Ganzzahl n an lst angehängt und lst zurückgegeben werden.
Die erste Zeile der Eingabe enthält eine einzelne Ganzzahl m, die angibt, wie oft die Funktion aufgerufen wird. Jede der nächsten m Zeilen enthält eine einzelne Ganzzahl n, die an die Liste angehängt wird.
Die Ausgabe soll m Zeilen enthalten. Jede Zeile soll eine Liste sein, die den Zustand von lst nach jedem Funktionsaufruf darstellt.
Eingabe
Ausgabe
3 1 2 3
[1] [2] [3]
Hinweis: Beachte, dass im Unterschied zur vorherigen Übung die Liste lst nicht zwischen den Funktionsaufrufen geteilt wird. Jeder Funktionsaufruf erzeugt eine Liste mit einem einzigen Element, das der Zahl entspricht, die in diesem speziellen Aufruf angehängt wurde. Dies ist das erwartete Verhalten und wird dadurch erreicht, dass veränderliche Standardargumente vermieden werden.
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue