Hier ist ein Pseudocode, den ich geschrieben habe und der mein Problem beschreibt: -
%Vor% Wenn ich am Ende den Wert von x ausdrücke, möchte ich, dass es von func (x) zurückgegeben wird. Kann ich so etwas nur tun, indem ich die Funktion bearbeite (und ohne x = func(x)
zu setzen)
Sie müssen eigentlich nichts zurückgeben:
%Vor% Es hängt alles davon ab, was Sie tatsächlich tun, das Anhängen oder eine direkte Mutation der Liste wird außerhalb der Funktion reflektiert, da Sie das ursprüngliche Objekt / die Liste tatsächlich ändern. Wenn Sie etwas tun, das ein neues Objekt erstellt und Sie wollten, dass die Änderungen, die in der Liste reflektiert werden, die in der Einstellung s[:] =..
übergeben wurde, die ursprüngliche Liste ändert.
So verhält es sich bereits, die Funktion kann die Liste mutieren
%Vor%Beachten Sie jedoch, dass Sie die ursprüngliche Liste nicht auf diese Weise mutieren können
%Vor% (Oben wird x
zugewiesen, aber nicht die ursprüngliche Liste l
)
Wenn Sie eine neue Liste in Ihre Liste einfügen möchten, benötigen Sie Folgendes:
%Vor%