def _compile_modules(self):
modules = {}
for module_finder, name, ispkg in pkgutil.walk_packages():
for attempt in range(2):
with suppress((AttributeError, ImportError)):
if attempt == 0:
loader = module_finder.find_spec(name).loader
filename = loader.get_filename(name)
elif attempt == 1:
filename = get_module_file_attribute(name)
break
else:
continue
modules[os.path.abspath(filename)] = name
return modules
评论列表
文章目录