Re: [問題] 如何找到class的instance??

看板Python作者 (阿真)時間15年前 (2009/11/27 02:38), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串6/10 (看更多)
※ 引述《sbrhsieh (偶爾想擺爛一下)》之銘言: : ※ 引述《KSJ (阿真)》之銘言: : : 假設 : : class a(): : : pass : : 建立好了class : : 然後instance : : b=a() : : b.x=6 : : c=a() : : c.x=666 : : 這樣很明白的有 b 跟 c 二個instance : : 可以找出各自的"值" : : b.x #6 : : c.x #666 : : 可是... 如果不知道instance存起來叫b (or c) : : 該如何找到 "a class 下曾 instance過的 instance 的"值" 呢" : : 我覺得找到instance(也就是b c) 找"值"就簡單了 (就b.x之類的) : : 可是不知道怎麼找instance 想請大家幫個忙 感恩 : 我認為在討論這個主題之前有必要先釐清一點: : 何謂 "a class 曾 instance 過的 instance"? : 舉例來說,假設你有一個可以 return 上述的集合的 function: get_a_instances, : 那麼下面的碼中集合 all_a 應該包含幾個物件? : a() : a() : all_a = get_a_instances() 以我的觀點來說 應該是0個 因為沒有存起來 也就是 如果是下面的話 b=a() c=a() all_a 會是二個 all_a[0] 是b這個instance all_a[1] 是c這個instance 好讓我能找到 b底下的一些參數 其實我也不懂為什麼globals() 裡面會有同名的module跟instance 我在python shell 下中 import sys 我看globals()下 有sys module sys=a() 我看globals()下 有sys 是a的instance 再import sys 又是變回 sys module 試不出怎麼會有同名的東西 感覺很奇怪 目前還在思索中 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.63.180
文章代碼(AID): #1B3iiQzX (Python)
討論串 (同標題文章)
文章代碼(AID): #1B3iiQzX (Python)