空文字列は偽で、それ以外の文字列は真と評価される。忘れてたよ。
せっかくなので確認しておこう。
- 空文字列(””)は偽、それ以外は真
- 数値の 0 は偽、それ以外は真
- 空の配列は偽、それ以外は真
- 空の辞書は偽、それ以外は真
- 空のタプルは偽、それ以外は真
これ以外では、True は真、False と None は偽。
確認してみよう。
>>> def true_or_false(obj):
... if obj:
... return True
... else:
... return False
...
>>> true_or_false("")
False
>>> true_or_false("a")
True
>>> true_or_false(0)
False
>>> true_or_false(-1)
True
>>> true_or_false([])
False
>>> true_or_false([1])
True
>>> true_or_false({})
False
>>> true_or_false({'a':'andy'})
True
>>> true_or_false(())
False
>>> true_or_false((1,))
True