DEPRECATED don't use it. Please do:
import importlib
foopath = 'src.apis.foo.Foo'
module_name = '.'.join(foopath.split('.')[:-1]) # to get src.apis.foo
foo_module = importlib.import_module(module_name)
clazz_name = foopath.split('.')[-1] # to get Foo
Foo = getattr(module_name, clazz_name)
print Foo()
Imports an object based on a string
- Free software: ISC license
- Documentation: https://import-string.readthedocs.io.
Imports an object based on a string. This is useful if you want to use import paths as endpoints or something similar. An import path can be specified either in dotted notation (.
) or with a colon as object delimiter (:
). If silent is True the return value will be None if the import fails.
import import_string
module = import_string('my_system.my_package.my_module')
function = import_string('my_system.my_module:some_function')
Class = import_string('my_system.my_module:SomeClass', silent=True)
# If path doesn't exist Class = None
See it in action here: https://repl.it/EGdS/0
- This package was extracted from werkzeug.utils module
- This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.