ホームページ  >  記事  >  バックエンド開発  >  x が None でない場合、または x が None でない場合に使用します。

x が None でない場合、または x が None でない場合に使用します。

anonymity
anonymityオリジナル
2019-05-24 13:48:354088ブラウズ

if x is not None または if not x is None を使用する必要がありますか?

Google のスタイル ガイドと PEP-8 は両方とも if x is not None を使用します。そのため、両者の間には若干のパフォーマンスの違いがありますか?

x が None でない場合、または x が None でない場合に使用します。

テストの結果、同じバイトコードにコンパイルされるため、パフォーマンスに違いがないことが判明しました:

Python 2.6.2 (r262:71600, Apr 15 2009, 07:20:39)>>> import dis>>> def f(x):...    return x is not None...>>> dis.dis(f)
  2           0 LOAD_FAST                0 (x)
              3 LOAD_CONST               0 (None)
              6 COMPARE_OP               9 (is not)
              9 RETURN_VALUE>>> def g(x):...   return not x is None...>>> dis.dis(g)
  2           0 LOAD_FAST                0 (x)
              3 LOAD_CONST               0 (None)
              6 COMPARE_OP               9 (is not)
              9 RETURN_VALUE

ただし、使用スタイルの観点から、次のようにしてみてください。 x が y でないことを避けてください。コンパイラーは常にこれを not (x is y) として扱いますが、読者はこの構造を (not x) is y であると誤解する可能性があります。したがって、x が y でない場合、そのような曖昧さはありません。

以上がx が None でない場合、または x が None でない場合に使用します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。