1. ホーム
  2. python

[解決済み] PythonでNoneTypeを "テスト "する方法は?

2022-03-19 21:02:24

質問

NoneTypeの値を返すことがあるメソッドがあります。そこで、NoneTypeである変数に質問するにはどうしたらよいでしょうか?私は使用する必要があります もし メソッドを使用すると、たとえば

if not new:
    new = '#'

間違った方法であることは承知で、私の言いたいことを理解していただければと思います。

どのように解決するのですか?

<ブロッククオート

では、NoneTypeである変数に質問するにはどうすればよいのでしょうか?

使用方法 is 演算子は、次のようになります。

if variable is None:

なぜこれが有効なのか?

から None の唯一のシングルトン・オブジェクトです。 NoneType をPythonで使用する場合 is 演算子を使って、変数に None が入っているかどうか。

引用元 is ドキュメント ,

演算子 isis not は、オブジェクトの同一性をテストします。 x is y は、以下の場合にのみ真となります。 xy は同じオブジェクトです。 x is not y は逆真理値を返す。

のインスタンスは1つしか存在しないので None , is をチェックするのが望ましいでしょう。 None .


馬の口から聞く

引用元 Pythonコーディングスタイルガイドライン - PEP-008 (Guido自身による共同定義)。

などの単体との比較 None は、常に is または is not , 決して等号演算子 .