ホームページ > バックエンド開発 > Python チュートリアル > Python で文字列をブール値に正確に変換する方法: bool() による予期しない結果を回避する

Python で文字列をブール値に正確に変換する方法: bool() による予期しない結果を回避する

Mary-Kate Olsen
リリース: 2024-10-27 20:26:30
オリジナル
498 人が閲覧しました

How to Accurately Convert Strings to Booleans in Python: Avoiding Unexpected Results with bool()

Python での文字列のブール値への解析: 不一致への対処

一方、Python では bool() を使用して文字列をブール値に変換する簡単な方法が提供されています。関数を使用すると、予期しない結果が生じることがよくあります。この記事では、文字列をブール値に正確に変換するための別のアプローチを示します。

bool() で発生する一般的な問題の 1 つは、空でない文字列がすべて True と評価されることです。これに対処するには、代わりに文字列を「true」を表す特定の値と比較します。

<code class="python">>>> s == 'True'</code>
ログイン後にコピー

このアプローチでは、明示的に「True」に一致する文字列のみが True と評価されます。

Forより複雑なシナリオでは、受け入れられる値のリストと照合することをお勧めします:

<code class="python">>>> s.lower() in ['true', '1', 't', 'y', 'yes', 'yeah', 'yup', 'certainly', 'uh-huh']</code>
ログイン後にコピー

ただし、空でない文字列で bool() を使用する場合は注意が必要です。以下に示すように、空の文字列は False と評価されますが、他のすべての文字列は True と評価されます。

<code class="python">>>> bool("foo")
True
>>> bool("")
False</code>
ログイン後にコピー

この動作は、False と評価されるべき空でない文字列が代わりに True を返すため、解析目的では問題があります。したがって、文字列をブール値に正確に変換するには、上記の代替方法を優先する必要があります。

以上がPython で文字列をブール値に正確に変換する方法: bool() による予期しない結果を回避するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート