【Python】bool 関数の使い方と実行結果

Python

Python の組み込み関数 boolブール の使い方です。

bool 関数で、『真理値しんりち』を判定するコード例と、実行結果を載せました。

エラーについてです。

関数として使った限りでは、bool 関数がエラーを返すようなコード例は、見つかりませんでした。

一方で、bool クラスを継承して新しいクラスを作ろうとしたら、エラーになりました。

エラーになったコード例

bool クラスで、エラーになったコードれいです。

(Python) class bool([x]) の説明にあった通り、bool を継承して派生クラスを作ることはできませんでした。

class JisakuClass(bool):
    pass
TypeError: type 'bool' is not an acceptable base type

引数無しの結果

bool 関数を、引数ひきすう無しで呼び出した結果です。

(Python) class bool([x])

bool() # 引数無し
False

組み込み定数を渡した結果

bool 関数に、組み込み定数を渡した結果です。

(Python) class bool([x])

(Python) False

(Python) True

(Python) None

bool(False) # False
False
bool(True) # True
True
bool(None) # None
False

int を渡した結果

bool 関数に、intイント整数せいすう)を渡した結果です。

(Python) class bool([x])

(Python) class int([x])

bool(0)
False
bool(1)
True
bool(-1)
True

float を渡した結果

bool 関数に、floatフロート浮動小数点数ふどうしょうすうてんすう)を渡した結果です。

(Python) class bool([x])

(Python) class float([x])

bool(0.0) # 0.0
False
bool(-0.0) # -0.0
False
bool(0.1) # 0.1
True
bool(-0.1) # -0.1
True
bool(1.0) # 1.0
True
bool(-1.0) # -1.0
True
bool(float('nan')) # nan
True
bool(float('inf')) # inf
True
bool(float('-inf')) # -inf
True

complex を渡した結果

bool 関数に、complexコンプレックス複素数ふくそすう)を渡した結果です。

(Python) class bool([x])

(Python) class complex([real[, imag]])

bool(complex(+0.0, +0.0)) # 0j
False
bool(complex(-0.0, -0.0)) # (-0-0j)
False
bool(complex(3.0, 0)) # (3+0j)
True
bool(complex(0, 4.0)) # 4j
True
bool(complex(+3.0, +4.0)) # (3+4j)
True
bool(complex(-3.0, -4.0)) # (-3-4j)
True
bool(complex(0.0, float('inf'))) # infj
True
bool(complex(0.0, float('-inf'))) # -infj
True
bool(complex(0.0, float('nan'))) # nanj
True
bool(complex(float('inf'), 0.0)) # (inf+0j)
True
bool(complex(float('-inf'), 0.0)) # (-inf+0j)
True
bool(complex(float('nan'), 0.0)) # (nan+0j)
True
bool(complex(float('inf'), float('inf'))) # (inf+infj)
True
bool(complex(float('-inf'), float('-inf'))) # (-inf-infj)
True
bool(complex(float('nan'), float('nan'))) # (nan+nanj)
True

Decimal を渡した結果

bool 関数に、Decimal 型デシマルがた十進数型じゅっしんすうがた)を渡した結果です。

(Python) class bool([x])

(Python) class decimal.Decimal(value="0", context=None)

from decimal import Decimal
bool(Decimal(0.0)) # Decimal('0')
False
from decimal import Decimal
bool(Decimal(-0.0)) # Decimal('-0')
False
from decimal import Decimal
bool(Decimal(0.1)) # Decimal('0.1000000000000000055511151231257827021181583404541015625')
True
from decimal import Decimal
bool(Decimal(-0.1)) # Decimal('-0.1000000000000000055511151231257827021181583404541015625')
True
from decimal import Decimal
bool(Decimal(1)) # Decimal('1')
True
from decimal import Decimal
bool(Decimal(-1)) # Decimal('-1')
True
from decimal import Decimal
bool(Decimal('inf')) # Decimal('Infinity')
True
from decimal import Decimal
bool(Decimal('-inf')) # Decimal('-Infinity')
True
from decimal import Decimal
bool(Decimal('nan')) # Decimal('NaN')
True

datetime.datetime を渡した結果

bool 関数に、日時にちじdatetime.datetimeデートタイム ドット デートタイム を渡した結果です。

(Python) class bool([x])

(Python) class datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)

(Python) datetime.min

import datetime
bool(datetime.datetime.min) # datetime.datetime(1, 1, 1, 0, 0)
True

datetime.date を渡した結果

bool 関数に、日付ひづけdatetime.dateデートタイム ドット デート を渡した結果です。

(Python) class bool([x])

(Python) class datetime.date(year, month, day)

(Python) date.min

import datetime
bool(datetime.date.min) # datetime.date(1, 1, 1)
True

datetime.time を渡した結果

bool 関数に、時刻じこくdatetime.timeデートタイム ドット タイム を渡した結果です。

(Python) class bool([x])

(Python) class datetime.time(hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)

(Python) time.min

import datetime
bool(datetime.time.min) # datetime.time(0, 0)
True

datetime.timedelta を渡した結果

bool 関数に、時間差じかんさdatetime.timedeltaデートタイム ドット タイムデルタ を渡した結果です。

(Python) class bool([x])

(Python) class datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

(Python) timedelta.min

import datetime
bool(datetime.timedelta(0, 0, 0, 0, 0, 0)) # datetime.timedelta(0)
False
import datetime
bool(datetime.timedelta(1, 0, 0, 0, 0, 0)) # datetime.timedelta(days=1)
True
import datetime
bool(datetime.timedelta(-1, 0, 0, 0, 0, 0)) # datetime.timedelta(days=-1)
True
import datetime
bool(datetime.timedelta(0, 1, 0, 0, 0, 0)) # datetime.timedelta(seconds=1)
True
import datetime
bool(datetime.timedelta(0, -1, 0, 0, 0, 0)) # datetime.timedelta(days=-1, seconds=86399)
True
import datetime
bool(datetime.timedelta(0, 0, 1, 0, 0, 0)) # datetime.timedelta(microseconds=1)
True
import datetime
bool(datetime.timedelta(0, 0, -1, 0, 0, 0)) # datetime.timedelta(days=-1, seconds=86399, microseconds=999999)
True
import datetime
bool(datetime.timedelta(0, 0, 0, 1, 0, 0)) # datetime.timedelta(microseconds=1000)
True
import datetime
bool(datetime.timedelta(0, 0, 0, -1, 0, 0)) # datetime.timedelta(days=-1, seconds=86399, microseconds=999000)
True
import datetime
bool(datetime.timedelta(0, 0, 0, 0, 1, 0)) # datetime.timedelta(seconds=60)
True
import datetime
bool(datetime.timedelta(0, 0, 0, 0, -1, 0)) # datetime.timedelta(days=-1, seconds=86340)
True
import datetime
bool(datetime.timedelta(0, 0, 0, 0, 0, 1)) # datetime.timedelta(seconds=3600)
True
import datetime
bool(datetime.timedelta(0, 0, 0, 0, 0, -1)) # datetime.timedelta(days=-1, seconds=82800)
True
import datetime
bool(datetime.timedelta.min) # datetime.timedelta(days=-999999999)
True

str を渡した結果

bool 関数に、strエスティーアール(文字列)を渡した結果です。

(Python) class bool([x])

(Python) class str(object='')

bool('') # '' 空文字列
False
bool('a') # 'a'
True
bool('0') # '0'
True
bool('あ') # 'あ'
True
bool('abc') # 'abc'
True

bytes を渡した結果

bool 関数に、bytesバイツを渡した結果です。

(Python) class bool([x])

(Python) class bytes([source[, encoding[, errors]]])

bool(b'') # b'' 空のバイト列
False
bool(b'\x00') # b'\x00'
True
bool(b'\x01') # b'\x01'
True
bool(b'\x00\x00') # b'\x00\x00'
True

bytearray を渡した結果

bool 関数に、bytearrayバイトアレイ を渡した結果です。

(Python) class bool([x])

(Python) class bytearray([source[, encoding[, errors]]])

bool(bytearray()) # bytearray(b'')
False
bool(bytearray((0,))) # bytearray(b'\x00')
True
bool(bytearray((1,))) # bytearray(b'\x01')
True
bool(bytearray((0, 0))) # bytearray(b'\x00\x00')
True

range を渡した結果

bool 関数に、rangeレンジ を渡した結果です。

(Python) class bool([x])

(Python) range(start, stop[, step])

bool(range(0)) # range(0, 0)
False
bool(range(1)) # range(0, 1)
True
bool(range(0, 2, 1)) # range(0, 2)
True
bool(range(-1)) # range(0, -1)
False
bool(range(0, -1, -1)) # range(0, -1, -1)
True

tuple を渡した結果

bool 関数に、tupleタプル を渡した結果です。

(Python) class bool([x])

(Python) tuple([iterable])

bool(()) # () 空のタプル
False
bool((False, )) # (False,)
True
bool((True,)) # (True,)
True
bool((None,)) # (None,)
True
bool((0,)) # (0,)
True
bool((0.0,)) # (0.0,)
True
bool((complex(0, 0),)) # (0j,)
True
bool(('',)) # ('',)
True
bool((b'',)) # (b'',)
True
bool((bytearray(),)) # (bytearray(b''),)
True
bool(([],)) # ([],)
True

list を渡した結果

bool 関数に、listリスト を渡した結果です。

(Python) class bool([x])

(Python) class list([iterable])

bool([]) # [] 空のリスト
False
bool([False]) # [False]
True
bool([True]) # [True]
True
bool([None]) # [None]
True
bool([0]) # [0]
True
bool([0.0]) # [0.0]
True
bool([complex(0, 0)]) # [0j]
True
bool(['']) # ['']
True
bool([b'']) # [b'']
True
bool([bytearray()]) # [bytearray(b'')]
True
bool([[]]) # [[]]
True

set を渡した結果

bool 関数に、集合しゅうごうsetセット を渡した結果です。

(Python) class bool([x])

(Python) class set([iterable])

bool(set()) # set() 空の集合
False
bool({False}) # {False}
True
bool({True}) # {True}
True
bool({None}) # {None}
True
bool({0}) # {0}
True
bool({0.0}) # {0.0}
True
bool({complex(0, 0)}) # {0j}
True
bool({''}) # {''}
True
bool({b''}) # {b''}
True
bool({()}) # {()}
True

dict を渡した結果

bool 関数に、辞書じしょdictディクト を渡した結果です。

(Python) class bool([x])

(Python) class dict(**kwarg)

(Python) keys()

(Python) values()

(Python) items()

bool({}) # {} 空の辞書
False
bool({False: None}) # {False: None}
True
bool({True: None}) # {True: None}
True
bool({None: None}) # {None: None}
True
bool({}.keys()) # dict_keys([])
False
bool({True: None}.keys()) # dict_keys([True])
True
bool({}.values()) # dict_values([])
False
bool({True: None}.values()) # dict_values([None])
True
bool({}.items()) # dict_items([])
False
bool({True: None}.items()) # dict_items([(True, None)])
True

function を渡した結果

bool 関数に、functionファンクション(関数)を渡した結果です。

(Python) class bool([x])

(Python) ラムダ (lambda)

bool(lambda x:x) # <function <lambda> at 0x0000000000000000>
True

以上です。

スポンサーリンク
シェアする(押すとSNS投稿用の『編集ページ』に移動します)
フォローする(RSSフィードに移動します)
スポンサーリンク
シラベルノート
タイトルとURLをコピーしました