Comment puis-je vérifier efficacement si une chaîne contient un élément d'une liste en Python ?

Susan Sarandon
Libérer: 2024-11-04 20:06:01
original
426 Les gens l'ont consulté

How Can I Efficiently Check if a String Contains an Element from a List in Python?

Correspondance de chaîne élégante avec un élément d'une liste en Python

En Python, il est possible de vérifier si une chaîne contient un élément d'une liste en utilisant une boucle for :

<code class="python">extensionsToCheck = ['.pdf', '.doc', '.xls']

for extension in extensionsToCheck:
    if extension in url_string:
        print(url_string)</code>
Copier après la connexion

Cependant, il existe une manière plus concise d'effectuer cette tâche sans boucle for. Considérez l'approche suivante qui imite une vérification de style "C/C", mais avec la syntaxe Python correcte :

<code class="python">if any(ext in url_string for ext in extensionsToCheck):
    print(url_string)</code>
Copier après la connexion

Cette solution utilise une expression génératrice pour créer une séquence de valeurs Vrai/Faux, où chaque valeur vérifie si l'extension actuelle de la liste se trouve dans la chaîne URL. La fonction any() évalue ensuite cette séquence pour déterminer si au moins une valeur True existe, indiquant que la chaîne URL contient un élément de la liste.

Contrairement à la solution précédente, cette approche met effectivement fin à la recherche plus tôt une fois une correspondance est trouvée. En employant l'expression génératrice et la fonction any(), nous obtenons à la fois concision et efficacité dans notre code.

Remarque : Il est crucial de comprendre que cette solution ne précise pas l'emplacement exact où le la chaîne correspondante est trouvée dans l'URL. Si la position du match est importante, considérez la solution proposée par @Wladimir Palant, qui prend en compte des positions de cordes spécifiques.

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
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!