environment/lib/python2.7/site-packages/IPython/utils/importstring.py
def import_item(name):
    """Import and return bar given the string foo.bar."""
    package = '.'.join(name.split('.')[0:-1])
    obj = name.split('.')[-1]
    
    # Note: the original code for this was the following.  We've left it
    # visible for now in case the new implementation shows any problems down
    # the road, to make it easier on anyone looking for a problem.  This code
    # should be removed once we're comfortable we didn't break anything.
    
    ## execString = 'from %s import %s' % (package, obj)
    ## try:
    ##     exec execString
    ## except SyntaxError:
    ##     raise ImportError("Invalid class specification: %s" % name)
    ## exec 'temp = %s' % obj
    ## return temp

    if package:
        module = __import__(package,fromlist=[obj])
        try:
            pak = module.__dict__[obj]
        except KeyError:
            raise ImportError('No module named %s' % obj)
        return pak
    else:
        return __import__(obj)
def import_item(name):
    package = '.'.join(name.split('.')[0:-1])
    obj = name.split('.')[-1]
    
    # Note: the original code for this was the following.  We've left it
    # visible for now in case the new implementation shows any problems down
    # the road, to make it easier on anyone looking for a problem.  This code
    # should be removed once we're comfortable we didn't break anything.
    
    ## execString = 'from %s import %s' % (package, obj)
    ## try:
    ##     exec execString
    ## except SyntaxError:
    ##     raise ImportError("Invalid class specification: %s" % name)
    ## exec 'temp = %s' % obj
    ## return temp

    if package:
        module = __import__(package,fromlist=[obj])
        try:
            pak = module.__dict__[obj]
        except KeyError:
            raise ImportError('No module named %s' % obj)
        return pak
    else:
        return __import__(obj)
def import_item ( name ) : package = '.' . join ( name . split ( '.' ) [ 0 : - 1 ] ) obj = name . split ( '.' ) [ - 1 ] # Note: the original code for this was the following.  We've left it # visible for now in case the new implementation shows any problems down # the road, to make it easier on anyone looking for a problem.  This code # should be removed once we're comfortable we didn't break anything. ## execString = 'from %s import %s' % (package, obj) ## try: ##     exec execString ## except SyntaxError: ##     raise ImportError("Invalid class specification: %s" % name) ## exec 'temp = %s' % obj ## return temp if package : module = __import__ ( package , fromlist = [ obj ] ) try : pak = module . __dict__ [ obj ] except KeyError : raise ImportError ( 'No module named %s' % obj ) return pak else : return __import__ ( obj )
Import and return bar given the string foo.bar.
Import and return bar given the string foo . bar .