Re: instance.attribute lookup

Discussion in 'Python' started by Ian Kelly, Oct 6, 2012.

  1. Ian Kelly

    Ian Kelly Guest

    On Fri, Oct 5, 2012 at 11:39 AM, Ethan Furman <> wrote:
    > There is a StackOverflow question [1] that points to this on-line book [2]
    > which has a five-step sequence for looking up attributes:
    >
    >> When retrieving an attribute from an object (print
    >> objectname.attrname) Python follows these steps:
    >>
    >> 1. If attrname is a special (i.e. Python-provided) attribute for
    >> objectname, return it.
    >>
    >> 2. Check objectname.__class__.__dict__ for attrname. If it exists and
    >> is a data-descriptor, return the descriptor result. Search all bases
    >> of objectname.__class__ for the same case.
    >>
    >> 3. Check objectname.__dict__ for attrname, and return if found. If
    >> objectname is a class, search its bases too. If it is a class and a
    >> descriptor exists in it or its bases, return the descriptor result.
    >>
    >> 4. Check objectname.__class__.__dict__ for attrname. If it exists and
    >> is a non-data descriptor, return the descriptor result. If it exists,
    >> and is not a descriptor, just return it. If it exists and is a data
    >> descriptor, we shouldn't be here because we would have returned at
    >> point 2. Search all bases of objectname.__class__ for same case.
    >>
    >> 5. Raise AttributeError

    >
    > I'm thinking step 1 is flat-out wrong and doesn't exist. Does anybody know
    > otherwise?


    I think step 1 refers to looking up attributes like "foo.__class__" or
    "foo.__dict__" themselves.
     
    Ian Kelly, Oct 6, 2012
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Donnal Walter

    class attribute to instance attribute

    Donnal Walter, Jun 30, 2005, in forum: Python
    Replies:
    4
    Views:
    509
    Greg Ewing
    Jul 6, 2005
  2. Kent Johnson
    Replies:
    5
    Views:
    285
    Kent Johnson
    Nov 14, 2005
  3. Russell Warren
    Replies:
    5
    Views:
    493
    Russell Warren
    Jan 17, 2006
  4. 陈伟
    Replies:
    9
    Views:
    278
    Hans Mulder
    Aug 30, 2012
  5. Ethan Furman

    instance.attribute lookup

    Ethan Furman, Oct 5, 2012, in forum: Python
    Replies:
    3
    Views:
    191
    Mark Lawrence
    Oct 6, 2012
Loading...

Share This Page