BACK

HOOPSII MOBILE

HOME

第8回 ブール型


1.ブール型とは

ブール型(bool型)とは、TrueかFalseの値のみを持ちます。

# coding: utf-8

# ブール型-True
print(True)
print(type(True))

# ブール型-False
print(False)
print(type(False))

実行結果

True
<type 'bool'>
False
<type 'bool'>

type関数を使用すると、TrueとFalseは'bool'であることがわかります。

2.ブール型と数値型との関係

Pythonのブール型は、Trueは1、Falseは0の値として振舞うことができます。
つまり、数値型との演算も可能です。
次のプログラムを見てください。

# coding: utf-8

# 数値型同士の演算
print(1 + 1)
print(1 + 0)

# 数値型とブール型との演算
print(1 + True)
print(1 + False)

実行結果

2
1
2
1

上記の実行結果を見ると、数値型1とブール型Trueが同じ値のように振舞っています。
ただし、厳密には、ブール型と整数型は異なりますので、is演算子を使用すると実行結果が異なります。
is演算子は、値ではなく、オブジェクトを比較して、等しい場合にTrueを返します。
次のプログラムを見てください。

# coding: utf-8

# 数値型同士の比較
print(1 is 1)
# 数値型とブール型との比較
print(1 is True)

実行結果

True
False

3.Javaとの比較

Javaのソースコードとの比較をします。
Javaを知っている方は参考にしてください。

Python Java
# coding: utf-8

# ブール型
a = True
b = False
print(a)
print(b)

# 数値型とブール型との演算
print(1 + a)
public class Java08 {
    public static void main(String[] args) {
        // ブーリアン型
        boolean a = true;
        boolean b = false;
        System.out.println(a);
        System.out.println(b);

        // 数値型とブーリアン型との演算(エラー)
        // System.out.println(1 + a);
    }
}

JavaにもTrueかFalseの値のみを扱うブーリアン型があります。
数値型との演算に関しては、Javaではエラーとなります。

Copyright (C) 2011 ほぷしぃ. All Rights Reserved.