Python で文字列をブール値に変換する

Lakshay Kapoor 2023年1月30日
  1. Python で bool() 関数を使用して文字列をブール値に変換する
  2. Python で distutils.util.strtobool() 関数を使用して文字列をブール値に変換する
  3. Python でリスト内包表記を使用して文字列をブール値に変換する
  4. Python で map() と Lamda 関数を使用して文字列をブール値に変換する
  5. Python で JSON パーサーを使用して文字列をブール値に変換する
  6. Python で eval() 関数を使用して文字列をブール値に変換する
Python で文字列をブール値に変換する

プログラミングの世界では、プログラマーが問題の記述に最も適したものにする必要のあるデータ型の変換が数多くあります。これらのデータ型の 1つは、true または false の 2つの可能な値を持つブールデータ型です。

このチュートリアルでは、Python で文字列をブール値に変換するさまざまな方法を紹介します。

Python で bool() 関数を使用して文字列をブール値に変換する

関数の引数として文字列を渡して、文字列をブール値に変換できます。この関数は、空でないすべての引数に対して true を返し、空の引数に対して false を返します。

例 1:

string_value = "Hello"
boolean_value = bool(string_value)

print(boolean_value)

出力:

True

例 2:

string_value = ""
boolean_value = bool(string_value)

print(boolean_value)

出力:

False

Python で distutils.util.strtobool() 関数を使用して文字列をブール値に変換する

この関数は、文字列値を 1 または 0 に変換します。値が正か負かによって異なります。TrueYesOn などの正の値は 1 に変換され、FalseNoOff などの負の値は 0 に変換されます。

例:

String_value = distutils.util.strtobool("Yes")
print(String_value)

出力:

1

出力をブール値に変換するには、bool() 関数を使用します。

Boolean_value = bool(String_value)

出力:

True

Python でリスト内包表記を使用して文字列をブール値に変換する

この方法では、true または false のいずれか 1つの値のみがチェックされます。もう一方の値は、チェックされた値の反対に自動的に分類されます。

例:

String_list = ["False", "True", "False", "False", "True"]
print(str(String_list))

boolean_list = [ele == "True" for ele in String_list]

print(str(boolean_list))

ここでは、false 値がチェックされ、それらの false 以外の値は true に分類されます。

Python で map() と Lamda 関数を使用して文字列をブール値に変換する

map() 関数は、変換関数が反復の各アイテムに適用され、変換後に新しい反復が形成されるときに使用されます。

Lambda 関数は Python の無名関数です。プログラムで無名関数が宣言されるときはいつでも、キーワード lambda を使用します。

例:

String_list = ["False", "True", "False", "False", "True"]
print(str(String_list))

Boolean_list = list(map(lambda ele: ele == "True", String_list))


print(str(Boolean_list))

出力:

[False, True, False, False, True]

また、主なアプローチとしてリスト内包表記を採用しましたが、ここでの違いは、map() 関数を使用してリストを作成し、匿名関数を作成して String_list をチェックしたことです。

Python で JSON パーサーを使用して文字列をブール値に変換する

JSON パーサーは、文字列から Python データ型への基本的な変換にも役立ちます。JSON 文字列の解析は、json.loads() メソッドを使用して行われます。

例:

import json

json.loads("true".lower())

出力:

True

また、これは小文字、つまり .lower() のみを使用して実行でき、大文字は使用できません。

Python で eval() 関数を使用して文字列をブール値に変換する

指定された文字列が True または False の場合、eval() 関数も使用できます。eval() 関数は、指定された文字列を調べます。文字列が有効な場合、実行されます。それ以外の場合は実行されません。

例:

eval("False")

出力:

False
著者: Lakshay Kapoor
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

関連記事 - Python Boolean

関連記事 - Python String