pythonis と == の違い:
##is は 2 つの変数を決定するために使用されます参照オブジェクトが同じかどうか、参照変数の値が等しいかどうかを判断するには == が使用されます。
a is b は id(a)==id(b) と等価で、id() でオブジェクトのメモリアドレスを取得できます。 (推奨される学習:Python ビデオ チュートリアル )
If a=10;b=a; このとき、a と b のメモリ アドレスは同じです;ただし、a =[1,2,3]; b=a[:]の場合、aとbの値は同じですが、メモリアドレスが異なります。 このとき a=10, b=10 と定義し、a が b であることを比較すると、返される結果は True であることがわかります。これは、Python で小さなシェーピング プールが作成されるためです。これらの整数用のメモリ空間を開くには、[ -5,256] の範囲を指定します。この範囲内の整数がコードで定義されている場合、メモリ アドレスは再割り当てされません。そして、Pycharm でテストしてみました:
#coding=utf-8 a=100000000000; b=100000000000; print a is b
結果:
True情報を確認したところ、次のことがわかりました。 : パフォーマンス上の理由から、Python は同じコード ブロック内に不変オブジェクトを繰り返し作成しませんが、同じ値を持つ限り既存のオブジェクトを直接参照します。 Python 関連の技術記事の詳細については、
Python チュートリアル 列にアクセスして学習してください。
以上がPython と == の違いはの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。