On Wed, 3 Dec 2008 08:58:42 -0500 (EST), [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:

> On Tue, 2 Dec 2008 at 23:21, Faheem Mitha wrote:
>> Yes, I was looking for this, and printed out obj.__dict__ but didn't
>> see it there. A dictionary of attributes is very useful in theory, but
>> doesn't always seem to have all attributes. Is this documented
>> anywhere?
>
> Try dir(obj).  You'll see it there.  The __dict__ is only for instance
> attributes.

Excellent. This is the first I've heard of this function, but
apparently it is a Python builtin. Well past time to go read the docs
for this, I guess.

>>> Not too difficult.  You can also use type(obj) instead of
>>> obj.__class__.
>>
>> I thought of trying this, but didn't. It didn't seem likely to work,
>> anyway. Is either of these preferred over the other in terms of API
>> stability, and if so, why?
>
> obj.__class__ is a python thing, as is type(obj), and neither of
> those is changing in python 3.0, so I'd think both would be stable API
> wise :)  However, the documentation of __class__ makes it clear you
> get the class back, while the documentation of the 'type' built in
> function does not...so I'd lean toward using __class__, myself.  It
> also means you'll get an earlier error if you accidentally pass
> something that is not actually a class instance into your function.

Thanks. That's very helpful.
                                                     Regards, Faheem.



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to