##// END OF EJS Templates
fix some deprecations...
fix some deprecations various deprecations, especially our own usage of deprecated APIs in this package - remove few remaining references to, uses of io.stdout - suppress deprecation warnings when initializing deprecated `utils.io.std*` - globalipapp.StreamProxy is now totally unused - one missing traitlets 4.2 API in core.formatters - get gui keys from pt_inputhooks instead of deprecated lib.inputhook - stop passing deprecated color_scheme to Pdb - nt.assert_equals in test_latextools

File last commit:

r20859:5f42d500
r22742:a9028681
Show More
importstring.py
39 lines | 1.0 KiB | text/x-python | PythonLexer
Brian Granger
A number of changes to how traitlets and components work....
r2229 # encoding: utf-8
"""
A simple utility to import something by its string name.
"""
Min RK
use getattr in import_item, shim_module...
r20859 # Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
Brian Granger
A number of changes to how traitlets and components work....
r2229
def import_item(name):
Fernando Perez
Add proper docstring.
r11016 """Import and return ``bar`` given the string ``foo.bar``.
Calling ``bar = import_item("foo.bar")`` is the functional equivalent of
executing the code ``from foo import bar``.
Parameters
----------
name : string
The fully qualified name of the module/package being imported.
Returns
-------
mod : module object
The module that was imported.
"""
Fernando Perez
Add explicit comment about disabled code in importstring....
r3121
Fernando Perez
Restructure code to avoid unnecessary list slicing by using rsplit.
r11018 parts = name.rsplit('.', 1)
if len(parts) == 2:
# called with 'foo.bar....'
package, obj = parts
module = __import__(package, fromlist=[obj])
Fernando Perez
Fix error in test suite startup with dotted import names....
r6738 try:
Min RK
use getattr in import_item, shim_module...
r20859 pak = getattr(module, obj)
except AttributeError:
Fernando Perez
Fix error in test suite startup with dotted import names....
r6738 raise ImportError('No module named %s' % obj)
return pak
Thomas Kluyver
Cleaning up old code to simplify 2to3 conversion.
r3108 else:
Fernando Perez
Restructure code to avoid unnecessary list slicing by using rsplit.
r11018 # called with un-dotted string
return __import__(parts[0])