Maison >développement back-end >Tutoriel Python >Comment trier des listes de chaînes en Python : un guide complet

Comment trier des listes de chaînes en Python : un guide complet

Linda Hamilton
Linda Hamiltonoriginal
2024-11-13 01:39:02997parcourir

How to Sort Lists of Strings in Python: A Comprehensive Guide

Tri des listes de chaînes en Python

L'une des tâches courantes en programmation consiste à trier les données textuelles. En Python, le tri d'une liste de chaînes peut être réalisé à l'aide de diverses techniques.

Tri de base

La méthode la plus simple consiste à utiliser la méthode sort() sur la liste elle-même . Ceci trie la liste sur place, en modifiant l'ordre d'origine.

mylist = ["b", "C", "A"]
mylist.sort()

Copie triée

Si vous souhaitez créer une copie triée de la liste sans modifier le original, utilisez la fonction sorted().

for x in sorted(mylist):
    print(x)

Locale-Sensitive Tri

Par défaut, Python effectue un tri sensible à la casse, uniquement en ASCII. Pour prendre en compte les règles spécifiques aux paramètres régionaux, utilisez le paramètre key avec l'assistant cmp_to_key() de functools.

import locale
from functools import cmp_to_key
sorted(mylist, key=cmp_to_key(locale.strcoll))

Tri des paramètres régionaux personnalisés

Vous pouvez spécifier des paramètres régionaux personnalisés pour le tri. Par exemple, pour trier selon les règles anglaises avec l'encodage UTF-8 :

import locale
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
# ...

Tri insensible à la casse

Évitez d'utiliser des méthodes telles que lower() pour la casse. tri insensible car ils ne fonctionnent que pour les caractères ASCII. Utilisez plutôt un tri sensible aux paramètres régionaux avec des outils tels que strcoll().

Tri incorrect insensible à la casse

# Incorrect because it uses lower(), which is limited to ASCII
mylist.sort(key=lambda x: x.lower())

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!

Déclaration:
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