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 サイトの他の関連記事を参照してください。