そして、Pythonの間の差である==

Pythonは事業者の多くを持って、今日私たちがイエスのアプリケーション上での演算子の==と2種類の本質的な違いは何かについて何かを言わなければなりません。

これら二つのオペレータ==差が話すとPythonに含まれるオブジェクトの三つの基本的な要素を知る必要がある前に、それらは:ID(アイデンティティ)、タイプ(データ型)と値(値)。

==オブジェクトと比較し、決定したアクションであるが、コンテンツオブジェクトの比較決意、同一ではありません。ここではどのような特定の違いを見てみます。

==比較演算子演算子のアイデンティティと違いがあります

== Pythonが決意値(値)の2つのオブジェクトを比較するための比較演算において標準演算子である、例えば、等しい、以下の二つの文字列間の比較:
実施例1。

= 'cheesezh'
B = 'cheesezh'
A == B
トゥルー

また、同一の操作者として知られており、オペレータが判断し、そのオブジェクトの一意の識別子とを比較する、すなわち同じIDかどうか。:いくつかの以下のリストの間で比較すると、あなたは原理は、アイデンティティオペレータであることを理解します
例2。

X = Y = [4,5,6]
、Z = [4,5,6]
のx == yの

のx == Z

xがyである

XがZである

プリントID(X)
3075326572
プリントID(Y)
3075326572
プリントID(Z)
3075328140

最初の三つの例がTrueの、偽これが最後の1がそれである何ですか?X、YおよびZの値は同じであるので、最初の二つの問題は真実ではありません。最後の1がFalseである理由については、3つのオブジェクトを見てみましょうidが理解するものです。

次は、同じタイプ(== B)の例を見て、実施例3の場合とBが真であり、(b)ではありません。
例3。

A = 1#AとBは数値型である
B 1 =
Bは
真の
ID(A)
14318944
ID(B)
14318944
A = 'cheesezh' #A文字列型及びBは
、B = 'cheesezh'
Bが
真の
ID (A)
42111872
ID(B)
42111872
A =(1,2,3)#AタプルとBである
(1,2,3)= B
Bが

ID(A)
15001280
ID(B)
14790408
A = [1,2,3] #AリストとB型のための
B = [1,2,3]
AがB

ID(A)
42091624
ID(B)
42082016
A = { 'チーズ' :. 1 'ZH' :2} #Aの辞書の種類とB
、B = { 'チーズ' :. 1 'ZH':2}
Bは

ID()
42101616
ID(B)
42098736
A =セット([1,2,3])#和B为セット类型
B =セット([1,2,3])
Bが

ID()
14819976
ID(B)
14822256

例3、及びbは、タプル、リスト、辞書の種類や設定時間あるときにのみ、数値と文字列、ISの前にbは、Trueの場合で見られるように、bがFalseにされています。

IDは、あなたが同じオブジェクトを指している場合、それは同じIDで、ポインタのようなものです。idは異なるが、同じ内容であれば、==本当でした。

公開された75元の記事 ウォン称賛7 ビュー10000 +

おすすめ

転載: blog.csdn.net/zhengdong12345/article/details/103831298