La fonction sorted
prend en paramètre d'entrée une liste
et retourne en sortie une nouvelle liste, triée en ordre croissant.
Exemple :
A = [2,4,1,5,90,0,-2]
B = sorted(A)
print(A) # affiche [2, 4, 1, 5, 90, 0, -2], la liste A n'a pas été modifiée
print(B) # affiche [-2, 0, 1, 2, 4, 5, 90]
La fonction sort
est par contre une méthode s'appliquant aux objets de type list.
Une telle méthode ne retourne rien : elle modifie la liste initiale (en la triant en ordre croissant).
Exemple :
A = [2,4,1,5,90,0,-2]
B = A.sort()
print(B) # affiche None car la méthode sort() ne renvoie rien
On n'effectue donc pas d'affectation (ligne 2 du script précédent) lorsqu'on applique la méthode sort
:
A = [2,4,1,5,90,0,-2]
A.sort()
print(A) # affiche [-2, 0, 1, 2, 4, 5, 90]
# c'est bien l'objet A lui-même qui est modifié