作者ya790206 (殘雲奪月)
看板Python
標題Re: [問題] 如何找到class的instance??
時間Fri Nov 27 00:59:19 2009
最笨的方法
class a:
pass
x=a()
def findx(clsname):
abc=globals()
for i in abc:
try:
if abc[i].__class__ == clsname.__class__:
print abc[i].s
except AttributeError:
pass
x.s=5
print type(x)
y=a()
y.s=66
findx(a())
主要就是用globals找出所有變數
然後一個一個去比對資料型態
夠笨吧...
~
~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.9.125
→ AndCycle:可以直接傳A而不用a()再做一個instance 11/27 01:36
→ AndCycle:inspect有getmembers跟isclass可以用 11/27 01:37
→ AndCycle:話說回來builtin就有isinstance可以用 ... 11/27 01:39
→ ya790206:我忘了有isinstance,感謝樓上指導 11/27 01:41
→ ya790206:我因為一篇程式碼不合原問題要求所以自D了 11/27 02:48