目次
変数の値の有無を判定する方法
ファイルを読み込んだ時に値を読み込めなかったりしたばあい、整数値が「0」とかいうのでは無く、そもそも値が無いという状態が発生します。
値そのものが存在しない場合True/Falseでは判定できません。
Pythonでこの状態をnullでは無くNoneと判定します。
では変数xに数字を代入した時と値が無い状態にした時ので正しく状態が判定できるかみてみます。
>>> x = 0 >>> x is None False >>> x = None >>> x is None True
xに数字の0を入れた場合(数字0は何も無いという意味では無く、0という数字が入っているという意味になります)は数字が変数に入っているので、何も無い状態では無いという事でFalseと正しく判定されました。
次に、変数にNoneを代入して、変数xの中身が何もない状態にしてみました。そうすると変数になにも入っていないという事でTrueと判定されました。
これはif文などの判定式でデータと読み込んだ際の状態によって処理を行う場合によく使いますので覚えておくと便利です。
参考:is演算子の意味
is演算子は左側の要素と右側の要素が同じであればTrue、違っていればFalseを返します。
>>> a = 1
>>> a is 1
True
>>> a is 1
True
>>> a is 2
False
is演算子もif文などの判定式でよく使いますので合わせて覚えておくと便利です。