Pythonのお勉強 Part39
■ このスレッドは過去ログ倉庫に格納されています
0595デフォルトの名無しさん
2010/10/23(土) 06:28:12具体的に
>>594
Pythonはいろんなもの(文字列や数値やクラスのオブジェクトだけじゃなく、
クラス、関数、モジュールも)がオブジェクトで、変数はオブジェクトへの参照を
格納してる。
a = [0]
b = a
a[0] = 1
print b # [1]
print a is b # True aとbは同一のオブジェクトを参照している
c = [1]
print a == c # True aとcは同じ値
print a is c # False aとcは別のオブジェクト
a[0] = 2
print c # [1]
この挙動はJavaの非プリミティブ型と同じなので、Javaの人であれば「プリミティブ型が
無いJavaの変数」と言えば理解が早いと思う。
Javaに比べると、 equals() が == に、 == が is になった。
■ このスレッドは過去ログ倉庫に格納されています