[過去ログ]
Pythonのお勉強 Part68 (1002レス)
Pythonのお勉強 Part68 http://mevius.5ch.net/test/read.cgi/tech/1663235546/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
135: デフォルトの名無しさん (ワッチョイ 429b-+bWc) [sage] 2022/09/26(月) 23:15:54.08 ID:QR+uVx8I0 python 3.9.10 a = (1, 2, 3) b = a c = (1, 2, 3) print(a==b) print(a is b) print(a==c) print(a is c) #True? なぜ a is c が true になるのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1663235546/135
136: デフォルトの名無しさん (ワッチョイ 429b-+bWc) [sage] 2022/09/26(月) 23:17:59.46 ID:QR+uVx8I0 >>135 ideone に貼っときます https://ideone.com/yVmxfv なぜでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1663235546/136
140: デフォルトの名無しさん (ワッチョイ d201-/Peb) [sage] 2022/09/26(月) 23:49:19.92 ID:eE4Lst2k0 >>139 それREPLでやってるからinterningが効いてないじゃないかな >>135 Tupleはimmutableだからaとcが同じオブジェクトを指しても問題なくて Pythonが最適化をした場合はa is cがTrueになるケースがある 「interning」でググってみて 例えばTupleを関数で返すようにすればinterningされずにFalseになると思う def foo(x): return (x, x+1, x+2) a = foo(1) c = foo(1) http://mevius.5ch.net/test/read.cgi/tech/1663235546/140
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.035s