看板 [ Python ]
討論串[問題] 新手請益
共 16 篇文章

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Tiberius (渴望平凡的幸福)時間16年前 (2009/03/19 23:24), 編輯資訊
0
0
0
內容預覽:
引述《justlink (('(oo)'))》之銘言:. 不要用 is 去判斷「字串值」 XD. 用個 class 包起來吧. --. 發信站: 批踢踢實業坊(ptt.cc). ◆ From: 122.117.40.88.

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者justlink (('(oo)'))時間16年前 (2009/03/19 23:15), 編輯資訊
0
0
0
內容預覽:
喔~不是的。. 而是我用變數裝起來也會發生同樣的事情,我想是我這個example 舉的不夠完善,. a = "e ". b = "e ". print( a is b ). 同樣會得到 True. 這是利用 IDLE 直接 run module的結果。. 跟上述的情形一樣。. 但是在 shell 底

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者superGA (kid...)時間16年前 (2009/03/19 21:55), 編輯資訊
0
0
0
內容預覽:
引述《justlink (('(oo)'))》之銘言:用變數裝起來. ex. a = "e ". b = "e ". print( a is b ). false. 這種寫法比較直覺 因為通常reference就是用一個變數去承接. is又是檢查是否為同一物件 因此不容易混淆. print( e
(還有115個字)

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者justlink (('(oo)'))時間16年前 (2009/03/19 21:19), 編輯資訊
0
0
0
內容預覽:
所以如果在採用 is 判斷是否同一個物件的時候,. 要小心是否被intern(),那再請問,如果此時要採用 is 做 reference 的判斷,. 有其他方法麼?. 或者可以採用何者方式,避免自動被intern() ?. --. 發信站: 批踢踢實業坊(ptt.cc). ◆ From: 140

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Tiberius (渴望平凡的幸福)時間16年前 (2009/03/19 20:59), 編輯資訊
0
0
0
內容預覽:
引述《justlink (('(oo)'))》之銘言:這是 "e " 被自動 intern 了,所以兩者是「同一個物件」這是沒有被 intern 的情形. 請參考內建函式 intern() 的說明,一般來說「不要假設字串會被自動 intern」. 比對字串內容是否相符的時候,請用 ==. pyt