Maison > développement back-end > Tutoriel Python > Comment trier les chaînes en Python : sur place, copies, paramètres régionaux et paramètres régionaux personnalisés ?

Comment trier les chaînes en Python : sur place, copies, paramètres régionaux et paramètres régionaux personnalisés ?

DDD
Libérer: 2024-11-10 17:26:03
original
1045 Les gens l'ont consulté

How to Sort Strings in Python: In-Place,  Copies, Locale-Aware, and Custom Locales?

Tri des listes de chaînes en Python

L'une des tâches courantes en programmation consiste à trier une liste de chaînes. En Python, il existe plusieurs façons d'y parvenir, chacune avec ses propres avantages et mises en garde.

Tri sur place

L'approche la plus simple consiste à utiliser le tri( ) directement sur la liste. Cela modifie la liste d'origine, en triant ses éléments par ordre alphabétique sur place. Cependant, cette approche n'est pas idéale si vous souhaitez conserver l'ordre d'origine de la liste.

mylist = ["b", "C", "A"]
mylist.sort()
Copier après la connexion

Créer des copies triées

Pour obtenir une copie triée d'un liste sans modifier l'original, utilisez la fonction sorted() :

for x in sorted(mylist):
    print(x)
Copier après la connexion

Locale-Aware Tri

Les méthodes de tri décrites ci-dessus effectuent un tri sensible à la casse et ne tenant pas compte des paramètres régionaux. Pour tenir compte des règles spécifiques aux paramètres régionaux, vous pouvez utiliser le paramètre key des fonctions sort() ou sorted(), ainsi que la fonction d'assistance cmp_to_key() du module functools :

sorted(mylist, key=cmp_to_key(locale.strcoll))
Copier après la connexion

Cela triera la liste en fonction des paramètres régionaux actuels.

Locales personnalisées

Enfin, si vous devez spécifier une locale personnalisée pour le tri, utilisez la fonction setlocale() du module locale :

import locale
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
sorted((u'Ab', u'ad', u'aa'), key=cmp_to_key(locale.strcoll))
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal