Ordenar una llista en Python: la diferència entre ordenada i ordenada

Negocis

Hi ha dues maneres d’ordenar una llista en ordre ascendent o descendent a Python.

  • sort()
  • sorted()

Si voleu ordenar una cadena o una tupla, utilitzeu sortd().

La informació següent es proporciona aquí.

  • Un mètode de llista de tipus que ordena la llista originalsort()
  • Genereu una nova llista ordenada, funció integrada: .sorted()
  • Com ordenar cadenes i tuples

Ordenant la llista original, un mètode de tipus llista: sort()

sort() és un mètode de tipus llista.

Un procés destructiu en el qual es reescriu la pròpia llista original.

org_list = [3, 1, 4, 5, 2]

org_list.sort()
print(org_list)
# [1, 2, 3, 4, 5]

Tingueu en compte que sort() no retorna Cap.

print(org_list.sort())
# None

El valor predeterminat és l’ordre ascendent. Si voleu ordenar en ordre descendent, establiu l’argument invers a true.

org_list.sort(reverse=True)
print(org_list)
# [5, 4, 3, 2, 1]

Genereu una nova llista ordenada, funció integrada: sorted()

sorted() és una funció integrada.

Retorna una llista ordenada quan la llista que s’ha d’ordenar s’especifica com a argument. Aquest és un procés no destructiu que no canvia la llista original.

org_list = [3, 1, 4, 5, 2]

new_list = sorted(org_list)
print(org_list)
print(new_list)
# [3, 1, 4, 5, 2]
# [1, 2, 3, 4, 5]

Igual que amb sort(), l’ordre per defecte és ascendent. Si voleu ordenar en ordre descendent, establiu l’argument invers a true.

new_list_reverse = sorted(org_list, reverse=True)
print(org_list)
print(new_list_reverse)
# [3, 1, 4, 5, 2]
# [5, 4, 3, 2, 1]

Com ordenar cadenes i tuples

Com que les cadenes i les tuples són immutables, no hi ha cap mètode sort() disponible per reescriure l’objecte original.

D’altra banda, l’argument de la funció sorted(), que genera una llista ordenada com a objecte nou, pot ser una cadena o tupla així com una llista. Tanmateix, com que sorted() retorna una llista, s’ha de convertir en una cadena o tupla.

Classificació de cadenes

Quan s’especifica una cadena com a argument de la funció sortd(), es retorna una llista en la qual cada caràcter de la cadena ordenada s’emmagatzema com a element.

org_str = 'cebad'

new_str_list = sorted(org_str)
print(org_str)
print(new_str_list)
# cebad
# ['a', 'b', 'c', 'd', 'e']

Per concatenar una llista de cadenes en una única cadena, utilitzeu el mètode join().

new_str = ''.join(new_str_list)
print(new_str)
# abcde

Si voleu ordenar en ordre descendent, establiu l’argument invers a true.

new_str = ''.join(sorted(org_str))
print(new_str)
# abcde

new_str_reverse = ''.join(sorted(org_str, reverse=True))
print(new_str_reverse)
# edcba

La mida d’una cadena ve determinada pel punt de codi Unicode (codi de caràcter) del caràcter.

Ordenant tuples

Les tuples són iguals que les cordes; especificar una tupla com a argument de la funció sortd() retorna una llista ordenada d’elements.

org_tuple = (3, 1, 4, 5, 2)

new_tuple_list = sorted(org_tuple)
print(org_tuple)
print(new_tuple_list)
# (3, 1, 4, 5, 2)
# [1, 2, 3, 4, 5]

Per convertir una llista en una tupla, utilitzeu tuple().

new_tuple = tuple(new_tuple_list)
print(new_tuple)
# (1, 2, 3, 4, 5)

Si voleu ordenar en ordre descendent, establiu l’argument invers a true.

new_tuple = tuple(sorted(new_tuple_list))
print(new_tuple)
# (1, 2, 3, 4, 5)

new_tuple_reverse = tuple(sorted(new_tuple_list, reverse=True))
print(new_tuple_reverse)
# (5, 4, 3, 2, 1)
Copied title and URL