Comment supprimer les caractères en double des chaînes en Python, en préservant ou en ignorant l'ordre d'origine ?

Barbara Streisand
Libérer: 2024-10-19 12:53:01
original
498 Les gens l'ont consulté

How to Remove Duplicate Characters from Strings in Python, Preserving or Disregarding the Original Order?

Supprimer les caractères en double des chaînes en Python

Problème :

Étant donné une chaîne contenant des doublons caractères, comment pouvons-nous supprimer ces doublons tout en préservant ou en ignorant l'ordre d'origine des caractères ?

Solution :

Préserver l'ordre d'origine :

Si conserver l'ordre des caractères d'origine n'est pas nécessaire, nous pouvons utiliser l'approche suivante :

"".join(set(string))
Copier après la connexion

Cette méthode convertit la chaîne en un ensemble, supprimant automatiquement tous les doublons et ne laissant que les caractères uniques. Par la suite, nous reconvertissons l'ensemble en chaîne à l'aide de la fonction "".join(), mais l'ordre des caractères peut changer.

Sans tenir compte de l'ordre d'origine :

Si le maintien de l'ordre des caractères d'origine n'est pas pertinent, nous pouvons supprimer les doublons à l'aide d'un dictionnaire :

result = "".join(dict.fromkeys(string))
Copier après la connexion

Dans cette solution, nous créons un dictionnaire avec des clés définies pour chaque caractère de la chaîne. Cependant, comme les dictionnaires n'autorisent pas les clés en double, les valeurs sont ignorées, ne laissant que les caractères uniques. Enfin, nous rejoignons ces clés uniques dans une chaîne.

Remarque pour les versions Python :

Dans Python 3.7 et versions ultérieures, les dictionnaires conservent l'ordre d'insertion de leurs clés. Dans les versions antérieures de Python (2.7 et supérieures), nous devrons peut-être importer collections.OrderedDict pour conserver l'ordre d'origine.

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
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!