Alexander Belopolsky <belopol...@users.sourceforge.net> added the comment:

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

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue8887>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to