„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann man effizient prüfen, ob ein Listenelement in einem Python-String vorhanden ist?

Wie kann man effizient prüfen, ob ein Listenelement in einem Python-String vorhanden ist?

Veröffentlicht am 08.11.2024
Durchsuche:569

How to Efficiently Check for List Element Presence in a Python String?

Überprüfen des Vorhandenseins von Listenelementen in einem String in Python

Eine häufige Aufgabe in der Python-Programmierung besteht darin, zu überprüfen, ob ein String ein Element aus einem bestimmten enthält Liste. Ein herkömmlicher Ansatz verwendet eine for-Schleife, wie im folgenden Code veranschaulicht:

extensionsToCheck = ['.pdf', '.doc', '.xls']

for extension in extensionsToCheck:
    if extension in url_string:
        print(url_string)

Obwohl diese Methode funktionsfähig ist, kann sie umständlich erscheinen. Ein prägnanterer Ansatz besteht darin, einen Generator in Verbindung mit der Funktion „any()“ zu verwenden, der seine Argumente auswertet, bis das erste True:

if any(ext in url_string for ext in extensionsToCheck):
    print(url_string)

String-Formatierung verwenden

Wenn es auf die Reihenfolge der Elemente in der Liste ankommt, kann alternativ auch die String-Formatierung verwendet werden. Zum Beispiel:

url_string = 'sample.doc'
extensionsToCheck = ['.pdf', '.doc', '.xls']

if f'.{url_string.split(".")[-1]}' in extensionsToCheck:
    print(url_string)

Hier trennt die Methode .split() die URL-Zeichenfolge basierend auf dem Punkt, und der Index [-1] wählt das letzte Element aus, das die Dateierweiterung darstellt. Der F-String formatiert dann die Erweiterung zum Vergleich in die richtige Form.

Hinweis: Die Verwendung von any() in diesem Kontext prüft nur, ob ein Element aus der Liste in der Zeichenfolge vorhanden ist. unabhängig von seiner Position. Wenn die spezifische Position des Elements von Bedeutung ist, sollten präzisere Methoden wie Regex- oder String-Manipulationsfunktionen in Betracht gezogen werden.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3