Maison > développement back-end > Tutoriel Python > Comment éliminer les caractères en double des chaînes tout en préservant l'ordre des caractères en Python ?

Comment éliminer les caractères en double des chaînes tout en préservant l'ordre des caractères en Python ?

DDD
Libérer: 2024-10-19 12:51:29
original
642 Les gens l'ont consulté

How to Eliminate Duplicate Characters from Strings while Preserving Character Order in Python?

Élimination des caractères en double des chaînes en Python

Question :

Pour supprimer les caractères en double de une chaîne en Python, considérons l'exemple de la conversion de "mppmt" en "mpt". Comment pouvons-nous réaliser cette transformation ?

Réponse :

Si l'ordre des caractères n'a pas d'importance, nous pouvons employer la méthode suivante :

<code class="python">"".join(set(foo))</code>
Copier après la connexion

Ici, set() génère une collection de caractères uniques à partir de la chaîne d'origine, et "".join() reconstruit la chaîne à partir de ces éléments uniques, en les organisant dans un ordre arbitraire.

Cependant, en préservant l'original l’ordre des caractères est crucial dans certaines situations. Pour tenir compte de cela, nous pouvons utiliser un dictionnaire plutôt qu'un ensemble, en tirant parti de sa fonctionnalité pour maintenir l'ordre d'insertion dans les versions 3.7 et supérieures de Python :

<code class="python">foo = "mppmt"
result = "".join(dict.fromkeys(foo))</code>
Copier après la connexion

Cette approche donne la chaîne souhaitée "mpt". De même, dans les versions Python antérieures à 3.7, nous pouvons utiliser collections.OrderedDict, qui a été introduit dans Python 2.7, pour obtenir le même résultat.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal