Python: 条件式での「True」と「False」の扱い
「True」と「False」の扱い
条件判断をする際に注意しておくことがあります。
文字列や数値もTrue、Falseで判定することができます。
例えば次のようなコードで True、False 判定が可能です。
a = 0 if a: print(True) else: print(False)
True、False 判定をする場合、数値の0と文字列の空の値は False と判定され、 それ以外は True と判定されます。 表にすると次の通りです。
データ型 | True | False |
---|---|---|
数値 | 0以外 | 0 |
文字列 | 空の値以外 | 空の値(None) |
条件判断時に「数値の0と空の値は False として判定される」 ことを認識しておいてください。
次のコードで変数「a」にいろいろな値を代入して、 どのように判定されるのかを試した結果が下の表です。
a = 0 if a: print(True) else: print(False)
「a」の値 | True / False |
---|---|
0 | False |
1 | True |
None | Flase |
"" | False |
"hoge" | True |
"0" | True |
"\n" | True |
"\t" | True |
" "(スペース) | True |