Pythonでbool()関数を使用すると、オブジェクトの真偽値(True/False)を取得することができます。この記事では、bool()関数の基本的な使い方と、様々なデータ型での挙動について解説します。
bool()関数の基本
bool()関数は、引数として渡されたオブジェクトの真偽値を返します。結果は必ずTrueまたはFalseのいずれかになります。
print(bool(1)) # True
print(bool(0)) # False
print(bool("Hello")) # True
print(bool("")) # False各データ型でのbool()の結果
数値の場合
- 0以外の数値:True
- 0:False
print(bool(42)) # True
print(bool(-1)) # True
print(bool(0)) # False
print(bool(0.0)) # False文字列の場合
- 空文字以外:True
- 空文字(""):False
print(bool("Python")) # True
print(bool(" ")) # True(スペースも文字として扱われる)
print(bool("")) # Falseリスト・タプル・辞書・セットの場合
- 要素が1つ以上ある:True
- 空の場合:False
print(bool([1, 2, 3])) # True
print(bool([])) # False
print(bool((1,))) # True
print(bool(())) # False
print(bool({"key": "value"})) # True
print(bool({})) # FalseNone の場合
print(bool(None)) # Falsebool()関数の実践的な使用例
条件分岐での使用
def check_user_input(text):
if bool(text.strip()):
return "入力が有効です"
return "入力が空です"
print(check_user_input("Hello")) # "入力が有効です"
print(check_user_input(" ")) # "入力が空です"リストの要素チェック
data_list = []
if bool(data_list):
print("リストに要素があります")
else:
print("リストは空です") # この行が実行されるまとめ
bool()関数は以下の場合にFalseを返します:
- 数値の0
- 空文字列
- 空のシーケンス(リスト、タプル、辞書など)
- None
上記以外の値に対してはTrueを返します。
bool()関数は条件分岐やデータの検証で頻繁に使用される重要な関数です。特に、ユーザー入力の検証やデータの存在確認などで活用できます。
より詳しい情報は[Python公式ドキュメント](https://docs.python.org/ja/3/library/functions.html#bool)を参照してください。