EdG a écrit :
(top-post corrected)
>
> Neil Cerutti wrote:
>
>>On 2007-01-18, EdG <[EMAIL PROTECTED]> wrote:
>>
>>>For debugging purposes, I would like to traverse the class
>>>listing out all the properties.
>>
>>This is the first thing that came to mind.
>>
>>def show_properties(cls):
>> for attr in dir(cls):
>> if isinstance(getattr(cls, attr), property):
>> print attr
>>
> This works great. I have one more question. Now that I have the name
> of the property, how do I get it's value?
>
> I want to print '%s = %s' % (attr,theattributesvalue)
Then you need to have the instance...
def list_properties(cls):
return [
name for name in dir(cls)
if isinstance(getattr(cls, name), property)
]
def print_properties(obj):
for name in list_properties(obj.__class__):
print "%s : %s" % (name, str(getattr(obj, name)))
--
http://mail.python.org/mailman/listinfo/python-list