Python 真偽値

真偽値

真偽値はTrueまたはFalseのいずれかの値を表します。

プログラミングでは、しばしば式がTrueかFalseかを知る必要があります。

Pythonでは任意の式を評価し、TrueまたはFalseのどちらかの答えを得ることができます。

2つの値を比較すると、式が評価され、Pythonは真偽値の答えを返します:

print(10 > 9)
print(10 == 9)
print(10 < 9)

if文で条件を実行すると、PythonはTrueまたはFalseを返します:

a = 200
b = 33

if b > a:
  print("b is greater than a")
else:
  print("b is not greater than a")

値と変数の評価

bool()関数を使用すると、任意の値を評価してTrueまたはFalseを返すことができます。

文字列と数値を評価する:

print(bool("Hello"))
print(bool(15))

2つの変数を評価する:

x = "Hello"
y = 15

print(bool(x))
print(bool(y))

ほとんどの値はTrue

ほとんどの値は、何らかの内容を持っていればTrueと評価されます。

空でない文字列はTrueです。

0以外の数値はTrueです。

空でないリスト、タプル、セット、辞書はTrueです。

以下はTrueを返します:

bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])

一部の値はFalse

実際には、空の値(()、[]、{}、””)、数値0、および値Noneを除いて、Falseと評価される値はほとんどありません。そしてもちろんFalseの値もFalseと評価されます。

以下はFalseを返します:

bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})

さらに、特定のクラスから作成されたオブジェクトで、__len__関数が0またはFalseを返す場合、そのオブジェクトもFalseと評価されます:

class myclass():
  def __len__(self):
    return 0

myobj = myclass()
print(bool(myobj))

関数は真偽値を返すことができます

真偽値を返す関数を作成することができます:

関数の答えを表示する:

def myFunction() :
  return True

print(myFunction())

関数の真偽の答えに基づいてコードを実行することができます:

関数がTrueを返す場合は”YES!”を、それ以外の場合は”NO!”を表示:

def myFunction() :
  return True

if myFunction():
  print("YES!")
else:
  print("NO!")

Pythonには、オブジェクトが特定のデータ型であるかどうかを判定するために使用できるisinstance()関数を含む多くの組み込み関数があります。

オブジェクトが整数かどうかをチェック:

x = 200
print(isinstance(x, int))