>> ZG·言語学習 >  >> 理論言語学 >> セマンティクス

条件付きで使用されたのはなぜですか?

条件付きの「IS」の使用について少し混乱しているようです。 Python(および他の多くのプログラミング言語)では、「IS」は IDの比較に使用されます 、一般的な平等だけではありません。これが故障です:

1。アイデンティティの比較のための "is":

* それが何をするか: 2つの変数がメモリの同じオブジェクトを指しているかどうかを確認 。

* 例:

`` python

a =[1、2、3]

b =a

c =[1、2、3]

印刷(a is b)#出力:true(aとbが同じリストを指します)

print(a is c)#出力:false(aとcは、同じコンテンツであっても、異なるリストを指します)

`` `

2。 "=="平等比較:

* それが何をするか: 2つの変数に同じ値があるかどうかを確認します 、同じオブジェクトを指すかどうかに関係なく。

* 例:

`` python

a =[1、2、3]

b =[1、2、3]

印刷(a ==b)#出力:true(両方のリストには同じ要素があります)

`` `

"is"は、条件:で使用されます

* 効率: 場合によっては、「IS」を使用することは、不要なオブジェクトの比較を回避するため、「==」よりも効率的になる場合があります。

* 特別なケース: 「なし」と比較するのに特に便利です。

`` python

my_variableがなしである場合:

#何かをする

`` `

重要な注意:

*リストのような可変オブジェクトで「IS」を使用するのは難しい場合があります。同じコンテンツがある場合でも、異なるオブジェクトを比較する可能性があるためです。通常、コンテンツの平等を比較する場合、「==」を使用する方が安全です。

要約:

* 2つの変数がメモリ内の同じオブジェクトであるかどうかを確認するために「IS」を使用します。

* 2つの変数が同じ値を持っているかどうかを確認するために「==」を使用します。

これ以上質問があるか、より多くの例を見たい場合はお知らせください。

著作権 © ZG·言語学習(www.zongjiefanwen.com) 無断複写・転載を禁じます。