Hi In O'Reilly Python Cookbook is an article "Getting all members of a class hierarchy". Here is the code: def all_members(aClass): try: #try getting all relevant classes in method-resolution order mro = list(aClass.__mro__) except AttributeError: #if a class has no __mro__, then it's a classic class def getmro(aClass, recurse): mro = [aClass] for base in aClass.__bases__: mro.extend(recurse(base, recurse)) return mro mro = getmro(aClass, getmro) mro.reverse() memebers = {} for someClass in mro: members.update(vars(someClass)) return members "The all_members function creates a dictionary that includes seach member(such as methods and data attributes) of a class with the name as the key and the class attribute value as the corresponding value." If you have the book take a look 'cause there is more stuff. i hope this will help dragos ----- Original Message ----- From: "Samir Mishra" <SamirMishra@cbuae.gov.ae> Cc: <zope@zope.org> Sent: Tuesday, May 20, 2003 10:17 AM Subject: RE: [Zope] Examining Properties of Returned Object
Thanks Troy. I wasn't clear in my earlier email...
I know how to get at the attribute/method of an object if I know what it's name is. By using someobj.attributename or someobj.methodname() (or using 'getattr(....)'). But how do I enumerate all attributes & methods associated with an object when I don't know the structure of the object (i.e., as if I was exploring the object in a debugger)?
I've been using Dieter Maurer's DocFinderEverywhere extensively to get info on generic objects returned by Zope (thanks Dieter, very helpful product, especially for beginners), but obviously it has it's limitations.
Thanks again. SM.
-----Original Message----- From: Troy Farrell [mailto:troy@entheossoft.com] Sent: Tuesday, May 20, 2003 08:40 To: Samir Mishra Cc: 'zope@zope.org' Subject: Re: [Zope] Examining Properties of Returned Object
What is calling your python script? Is it TAL(ES), DTML, another python script, a zope product or an external method? Unfortunately, each of these has some slightly different methods... Did you try
obj.myattribute
or
getattr(obj, myattribute)
or (in TAL)
obj/myattribute
Thanks. Troy
Samir Mishra wrote:
Hello all,
I'm sure there's a way, just can't figure it out...
I have a python script returning an object. The result set I'm actually interested in is wrapped somewhere within this object.
My question: how can I examine the properties/methods of an object returned by Python?
Thanks in advance.
Regards, Samir
_______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )