Rückgabewerte der Listensortierung verstehen
In Python führt die Verwendung der Funktion „sort()“ für Listen nicht direkt zur sortierten Liste . Stattdessen wird die ursprüngliche Liste direkt geändert, ohne einen expliziten Rückgabewert zu erzeugen.
Diese Abweichung von der Erwartung kann zu Verwirrung führen, da der Aufrufer möglicherweise erwartet, dass die Funktion die sortierte Liste zurückgibt. Zur Verdeutlichung: „list.sort()“ erstellt keine neue sortierte Liste, sondern ordnet die Elemente innerhalb der vorhandenen Liste neu.
Um die gewünschte sortierte Liste als Ausgabe zu erhalten, sollte der Code explizit Folgendes zurückgeben sortierte Liste. Die korrigierte Version des bereitgestellten Codeausschnitts sollte wie folgt lauten:
def findUniqueWords(theList): newList = [] words = [] # Read a line at a time for item in theList: # Remove any punctuation from the line cleaned = cleanUp(item) # Split the line into separate words words = cleaned.split() # Evaluate each word for word in words: # Count each unique word if word not in newList: newList.append(word) newList.sort() return newList
Durch das Hinzufügen von „newList.sort()“ außerhalb der Schleife wird die Liste an Ort und Stelle sortiert. Anschließend stellt die Rückgabe von „newList“ sicher, dass die sortierte Liste dem Aufrufer zur Verfügung steht.
Das obige ist der detaillierte Inhalt vonWarum gibt Pythons „list.sort()' nicht die sortierte Liste zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!