MCPcopy Create free account
hub / github.com/EasyIME/PIME / import_object

Function import_object

python/python3/tornado/util.py:125–151  ·  view source on GitHub ↗

Imports an object by name. ``import_object('x')`` is equivalent to ``import x``. ``import_object('x.y.z')`` is equivalent to ``from x.y import z``. >>> import tornado.escape >>> import_object('tornado.escape') is tornado.escape True >>> import_object('tornado.escape.utf8')

(name: str)

Source from the content-addressed store, hash-verified

123
124
125def import_object(name: str) -> Any:
126 """Imports an object by name.
127
128 ``import_object('x')`` is equivalent to ``import x``.
129 ``import_object('x.y.z')`` is equivalent to ``from x.y import z``.
130
131 >>> import tornado.escape
132 >>> import_object('tornado.escape') is tornado.escape
133 True
134 >>> import_object('tornado.escape.utf8') is tornado.escape.utf8
135 True
136 >>> import_object('tornado') is tornado
137 True
138 >>> import_object('tornado.missing_module')
139 Traceback (most recent call last):
140 ...
141 ImportError: No module named missing_module
142 """
143 if name.count(".") == 0:
144 return __import__(name)
145
146 parts = name.split(".")
147 obj = __import__(".".join(parts[:-1]), fromlist=[parts[-1]])
148 try:
149 return getattr(obj, parts[-1])
150 except AttributeError:
151 raise ImportError("No module named %s" % parts[-1])
152
153
154def exec_in(

Callers 7

__init__Method · 0.90
configureMethod · 0.90
test_import_memberMethod · 0.90
test_import_moduleMethod · 0.90
configureMethod · 0.85

Calls 3

splitMethod · 0.80
joinMethod · 0.80
countMethod · 0.45

Tested by 4

test_import_memberMethod · 0.72
test_import_moduleMethod · 0.72