Wie mutiere ich eine Liste mit einer Funktion in Python?

8

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)

    
Ritvik Sharma 11.07.2015, 17:06
quelle

2 Antworten

4
%Vor%

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.

    
Padraic Cunningham 11.07.2015, 17:12
quelle
7

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%     
bakkal 11.07.2015 17:09
quelle

Tags und Links