This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author belopolsky
Recipients belopolsky, eric.araujo, ezio.melotti, ysj.ray
Date 2011-05-27.16:12:10
SpamBayes Score 1.5008988e-05
Marked as misclassified No
Message-id <1306512731.32.0.139009339333.issue8887@psf.upfronthosting.co.za>
In-reply-to
Content
The patch looks good.  A nit-pick:

+        if len(parts) > 0:

Since *parts* is a list, the above can be replaced with simply "if parts:".

Also, it seems to me that the new code may produce an AttributeError when given invalid name, but locate() function is supposed to return None instead.

I wouder if it would be possible to reuse the try/except logic ing the "if module" clause and simply do something like

    if module:
        object = module
    else:
        object = builtins
    for part in parts[n:]:
        try:
            object = getattr(object, part)
        except AttributeError:
            return None
    return object
History
Date User Action Args
2011-05-27 16:12:11belopolskysetrecipients: + belopolsky, ezio.melotti, eric.araujo, ysj.ray
2011-05-27 16:12:11belopolskysetmessageid: <1306512731.32.0.139009339333.issue8887@psf.upfronthosting.co.za>
2011-05-27 16:12:10belopolskylinkissue8887 messages
2011-05-27 16:12:10belopolskycreate