ホームページ  >  記事  >  バックエンド開発  >  Python で文字列を多くの可能な値と効率的に比較するにはどうすればよいですか?

Python で文字列を多くの可能な値と効率的に比較するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-25 15:01:14888ブラウズ

How Can I Efficiently Compare a String Against Many Possible Values in Python?

Python での効率的な文字列比較

Python では、文字列を複数の可能な値と比較することが、入力の検証や条件演算の実行に重要な場合があります。一般的なアプローチの 1 つは、一連の if-else ステートメントを使用して、文字列を可能な値のそれぞれと明示的に比較することです。ただし、これは、特に広範な値のリストを扱う場合に、コードが冗長で非効率になる可能性があります。

代替ソリューションには、セットを使用することが含まれます。セットは、迅速なメンバーシップ テストをサポートする独自の要素のコレクションです。有効な文字列を含むセットを作成し、そのセット内に入力文字列が存在するかどうかを確認することで、効率的な検証を行うことができます。

たとえば、有効な文字列が次の場合:

auth, authpriv, daemon, cron, ftp, lpr, kern, mail, news, syslog, user, uucp, local0, ... , local7

次のようにセットを作成できます:

accepted_strings = {'auth', 'authpriv', 'daemon', ...}

その後、in を使用して入力文字列機能をセットと比較できます。演算子:

if facility in accepted_strings:
    do_stuff()

セット内の包含のチェックは定数時間の操作 (平均 O(1)) であり、有効な文字列が多数ある場合でも非常に効率的です。

以上がPython で文字列を多くの可能な値と効率的に比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。