Pythonのブール値(bool型)とは?基本からbool()関数の使い方まで解説
Pythonでは、式の真偽値(True/False)は「bool」というデータ型として扱われます。bool型に属する値は True と False の2つだけであり、条件分岐や比較処理など、プログラムのあらゆる場面で重要な役割を果たします。
ブール値(Boolean)データ型の確認
まず、True と False がどのようなデータ型であるかを確認してみましょう。以下のプログラムでは、type() 関数を使ってそれぞれのデータ型を出力しています。
サンプルコード
print(True) print(type(True)) print(False) print(type(False))
実行結果
上記のコードを実行すると、次のような出力が得られます。
True <class 'bool'> False <class 'bool'>
このように、True も False もどちらも「bool」クラスのインスタンスであることがわかります。
ブール式(Boolean Expression)とは
ブール式とは、評価した結果がブール値(True または False)になる式のことです。多くの場合、比較演算子(==、!=、<、> など)が使われます。比較演算子を使うことで、2つの値の関係を判定し、その結果を True か False で受け取ることができます。
また、Pythonには bool() メソッドが用意されており、任意の値や式の真偽値を取得できます。
bool() 関数の構文
構文: bool([x]) x が真と評価される場合は True を返し、そうでなければ False を返します。 引数なしで呼び出した場合は False を返します。
bool() 関数の使用例
以下の例では、数値・シーケンス・マッピング・文字列など、さまざまな値を bool() 関数に渡して真偽値を確認しています。結果は引数の内容によって True または False になります。
サンプルコード
# True のチェック
a = True
print(bool(a))
# False のチェック
a = False
print(bool(a))
# 0 のチェック(0は False とみなされる)
a = 0.0
print(bool(a))
# 1 のチェック(0以外の数値は True とみなされる)
a = 1.0
print(bool(a))
# 等価性のチェック
a = 5
b = 10
print(bool(a == b))
# None のチェック
a = None
print(bool(a))
# 空のシーケンスのチェック
a = ()
print(bool(a))
# 空のマッピング(辞書)のチェック
a = {}
print(bool(a))
# 空でない文字列のチェック
a = 'Tutorialspoint'
print(bool(a))
実行結果
上記のコードを実行すると、次のような出力が得られます。
True False False True False False False False True
まとめ
Pythonにおけるブール値は、True と False の2種類のみを持つ bool 型です。数値の 0、None、空のシーケンス(() や [])、空のマッピング({})、空の文字列('')はすべて False と評価され、それ以外の値は True と評価されます。この特性を理解しておくと、if文などの条件分岐をより簡潔に書くことができるようになります。
-
Pythonで辞書の値を合計する方法をわかりやすく解説
Pythonの辞書(dict)に格納された値の合計を求めるのは非常に簡単です。最も基本的な方法は、dict.values()メソッドで辞書のすべての値を取得し、組み込み関数のsum()に渡すだけです。基本の方法:dict.values() と sum() を使うまずは最もシンプルな例を見てみましょう。次のコードでは、3つのキーと値を持つ辞書の値をすべて合計しています。d = { foo: 10, bar: 20, baz: 30 } print(sum(d.values()))実行結果このコードを実行すると、以下の出力が得られます。60別の方法:forループで合計するs
-
Pythonのブール演算子とは?and・or・notの基本と使い方をわかりやすく解説
Pythonにおけるブール演算子の基本Pythonでは、and、or、not の3つの論理演算子が提供されており、これらは「ブール演算子」とも呼ばれます。条件分岐や繰り返し処理など、プログラムの制御フローを組み立てる際に欠かせない重要な演算子です。それぞれの演算子には以下のような特徴があります。and:2つのオペランド(被演算子)を必要とし、両方が真(True)の場合にのみ True を返すor:2つのオペランドを必要とし、どちらか一方でも真であれば True を返すnot:1つのオペランドを必要とし、その真偽値を反転させるand演算子:両方が真のときだけTrueを返すブール演算子 and は