Pythonでは、特定のオブジェクトが None
であるかを判定するには is
演算子を使います。記法は、 オブジェクト is None
で、 True
が返されれば オブジェクト
は None
であることがわかります。逆に、オブジェクトが None
ではないことを確認するには、 オブジェクト is not None
という否定系を使います。
また、Pythonでは変数が None
の場合、文字列表現はブランクではなく 'None'
という文字列となります。そのため、 None
の場合、ブランクにしたい場合があると思いますが、いちいち if s is None: s = ""
と書くのもなかなか面倒くさいものです。
そこでよく使われるイディオムを紹介します。 or
演算子には、単純に論理演算するだけではなく、演算子の左側が False
の場合、右側の値を返す性質があります。 None
は False
で評価されますので、この性質を利用すると、以下のように書くと、変数が None
の場合、ブランクを設定することが可能です。
s = None
text = s or ""
print(text) # ブランク
このように、Pythonでは None
の取り扱いに注意が必要です。特に初心者の方は、この記事を参考に None
の取り扱いに慣れていきましょう。