Warum geben Pythons Mutating-List-Methoden „Keine“ zurück?
Viele Python-Listenmethoden, einschließlich Anhängen, Sortieren, Erweitern, Entfernen, Löschen und Umkehren, nach dem Ändern der Liste None zurückgeben. Diese Designwahl hat Fragen zu ihrer Begründung und möglichen Nachteilen aufgeworfen.
Gemäß den Designprinzipien von Python sollten Funktionen, die ein Objekt an Ort und Stelle mutieren, None zurückgeben. Dies unterstreicht, dass die Operation am vorhandenen Objekt ausgeführt wird, anstatt ein neues zu erstellen.
Guido van Rossum, der Erfinder von Python, erklärt die Gründe für diese Entscheidung:
Während einige argumentieren, dass dieses Design die „Verkettung“ der Listenverarbeitung behindert, glaubt Rossum, dass es die Lesbarkeit des Codes verbessert und deutlich macht, dass dies bei nachfolgenden Vorgängen der Fall ist auf dasselbe Objekt angewendet.
Er kontrastiert dies mit Verkettungsoperationen, die neue Werte zurückgeben, wie z. B. String-Verarbeitungsoperationen, die er für geeignet hält Verkettung.
Zusammenfassend lässt sich sagen, dass die Entscheidung, None aus Pythons Mutationslistenmethoden zurückzugeben, auf dem Entwurfsprinzip der Unterscheidung zwischen Operationen, die ein Objekt direkt ändern, und solchen, die einen neuen Wert zurückgeben, basiert.
Das obige ist der detaillierte Inhalt vonWarum geben die In-Place-Listenmethoden von Python keine zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!