もし私が間違っていないのであれば、はTrue
を返してください。a
とb
は同じオブジェクトを指しています。 2つの等しいリストの場合、リストは2つの異なるリストであるため、False
を返します。私は不変オブジェクトは、この問題を持っていなかったと思ったが、私は中に入れたとき:インターナショナルはどのように不変オブジェクトで動作しますか?
a = (1, 2, 3)
b = (1, 2, 3)
a is b #returns false
私はこれが同じ値を持つ不変オブジェクトにa
以来True
とb
ポイントを返さなければならないと思いました。なぜ私はタプルを使用するとは、b
と同じオブジェクトを指していないのですか?
すべての変更不能オブジェクトがインターナショナルであるわけではありません。 –
http://pythontutor.com/visualize.html#code=a%20%3D%20(1,%202,%203%29%0Ab%20%3D%20(1,%202,%203%29) & curInstr = 3&heapPrimitives = true&mode = display&origin = opt-frontend。%0Aa%20is%20b%20%23returns%20false&cumulative = true&curInstr = 3&heapPrimitives = true&mode =js&py = 3&rawInputLstJSON =%5B%5D&textReferences = false –
これは関連しています:http://stackoverflow.com/q/6934202/4996248 –