Comprendre les valeurs de retour du tri de liste
En Python, l'utilisation de la fonction "sort()" sur les listes ne renvoie pas directement la liste triée . Au lieu de cela, il modifie la liste d'origine sur place sans produire de valeur de retour explicite.
Cet écart par rapport aux attentes peut prêter à confusion, car l'appelant peut s'attendre à ce que la fonction renvoie la liste triée. Pour clarifier, "list.sort()" ne crée pas une nouvelle liste triée mais réorganise plutôt les éléments de la liste existante.
Pour obtenir la liste triée souhaitée en sortie, le code doit renvoyer explicitement le liste triée. La version corrigée de l'extrait de code fourni doit être :
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
En ajoutant "newList.sort()" en dehors de la boucle, la liste est triée sur place. Ensuite, renvoyer "newList" garantit que la liste triée est disponible pour l'appelant.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!