if not suffix.startswith('.py'):
    continue
abs_path = os.path.join(dir, name + suffix)
if not os.path.exists(abs_path):
    continue
fh = open(abs_path)
return imp.load_module(name, fh, abs_path, description)
import_module('.', 'foo')
Как python работает с модулем и пакетом с одинаковым именем?