2013-07-01 64 views
-3

我將如何給出一個對象,如字符串,爲某個對象遞歸搜索所有全局和本地的所有內容,然後讓它返回我如何訪問該對象。有點像搜索整個字符串的所有內容

>>> SearchEveryThing(Object_Thing) 
Found in global 
dictionary_thing[list_thing][2].attribute_thing is Object_Thing 

或類似的東西。

回答

1

我的第一本能就是告訴你以某種方式使用globals()object_instance.__dict__,對所有找到的值進行迭代,但是你的問題通常是不能完成的。

想象一下,如果你的程序是一個更大的應用程序。你不得不迭代的對象的數量會非常棘手。

+0

.__ dict__對於內建對象不起作用,如果將它隱藏在列表或其他內置容器中(這可能不需要通過它們的屬性),這使得它更難以使用。迭代不會像字典一樣工作事情(因爲它不會擊中鍵) – PyRulez

+0

我想可以添加內置的特殊方法。如果你想要經歷他們所有的事情,你不可以嘗試調用'iteritems'嗎? – TankorSmash

+0

好吧,我找到了我想找的東西(我需要一種方法,所以這不會有幫助),但我會記住這個爲將來。 – PyRulez

相關問題