0
0
mirror of https://github.com/python/cpython.git synced 2024-11-24 08:52:25 +01:00
cpython/Lib/importlib/util.py

23 lines
690 B
Python
Raw Normal View History

"""Utility code for constructing importers, etc."""
2010-04-17 02:19:56 +02:00
from ._bootstrap import module_to_load
from ._bootstrap import module_for_loader
from ._bootstrap import set_loader
from ._bootstrap import set_package
2012-05-13 19:45:09 +02:00
from ._bootstrap import _resolve_name
def resolve_name(name, package):
"""Resolve a relative module name to an absolute one."""
if not name.startswith('.'):
return name
elif not package:
raise ValueError('{!r} is not a relative name '
'(no leading dot)'.format(name))
level = 0
for character in name:
if character != '.':
break
level += 1
return _resolve_name(name[level:], package, level)