Effizienter String-Vergleich in Python
In Python kann der Vergleich einer Zeichenfolge mit mehreren möglichen Werten für die Validierung von Eingaben oder die Durchführung bedingter Operationen von entscheidender Bedeutung sein. Ein gängiger Ansatz besteht darin, eine Reihe von if-else-Anweisungen zu verwenden und die Zeichenfolge explizit mit jedem möglichen Wert zu vergleichen. Dies kann jedoch zu ausführlichem und ineffizientem Code führen, insbesondere wenn es um eine umfangreiche Liste von Werten geht.
Eine alternative Lösung besteht in der Verwendung einer Menge. Ein Set ist eine Sammlung einzigartiger Elemente, die schnelle Mitgliedschaftstests unterstützen. Indem Sie einen Satz erstellen, der die gültigen Zeichenfolgen enthält, und dann prüfen, ob die Eingabezeichenfolge im Satz vorhanden ist, können Sie eine effiziente Validierung erreichen.
Wenn die gültigen Zeichenfolgen beispielsweise lauten:
auth, authpriv, daemon, cron, ftp, lpr, kern, mail, news, syslog, user, uucp, local0, ... , local7
Sie Sie können einen Satz wie folgt erstellen:
accepted_strings = {'auth', 'authpriv', 'daemon', ...}
Dann können Sie die Eingabezeichenfolgenfunktion mit dem Satz vergleichen Verwenden der Funktion „in“ in „Operator:
if facility in accepted_strings: do_stuff()
Die Überprüfung, ob eine Menge enthalten ist, ist eine Operation mit konstanter Zeit (durchschnittlich O(1)), wodurch sie auch bei einer großen Anzahl gültiger Zeichenfolgen äußerst effizient ist.
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