Maison > développement back-end > Tutoriel Python > Comment filtrer les chaînes contenant une sous-chaîne spécifique en Python ?

Comment filtrer les chaînes contenant une sous-chaîne spécifique en Python ?

Patricia Arquette
Libérer: 2024-10-20 06:19:02
original
347 Les gens l'ont consulté

How to Filter Strings Containing a Specific Substring in Python?

Filtrage des chaînes contenant un contenu spécifique

Le filtrage d'une liste de chaînes en fonction du contenu est une tâche courante en programmation. Dans ce cas, nous souhaitons extraire toutes les chaînes d’une liste contenant la sous-chaîne « ab ». Ceci peut être réalisé de différentes manières en Python.

Compréhensions de liste

L'approche la plus efficace consiste à utiliser des compréhensions de liste, qui combinent l'itération de liste et le filtrage conditionnel dans une seule expression. . Voici comment procéder :

<code class="python">lst = ['a', 'ab', 'abc', 'bac']
ab_strings = [k for k in lst if 'ab' in k]
print(ab_strings)</code>
Copier après la connexion

Sortie :

['ab', 'abc']
Copier après la connexion

Fonction de filtre

Une autre option est pour utiliser la fonction de filtrage, qui parcourt une liste et applique un critère de filtrage spécifié par une fonction lambda. Dans Python 2, vous pouvez l'utiliser comme suit :

<code class="python">ab_strings = filter(lambda k: 'ab' in k, lst)</code>
Copier après la connexion

Dans Python 3, le filtre renvoie un itérateur au lieu d'une liste, vous pouvez donc soit le parcourir directement, soit le convertir en liste :

<code class="python"># Option A: Iterate over the iterable
for k in ab_strings:
    print(k)

# Option B: Cast to a list
ab_strings = list(ab_strings)
print(ab_strings)</code>
Copier après la connexion

Conclusion

Les compréhensions de liste et la fonction de filtre offrent des moyens efficaces de filtrer une liste de chaînes en fonction d'un contenu spécifique. Cependant, les compréhensions de listes sont généralement préférées pour leur syntaxe concise et lisible.

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