从其他文件夹导入python模型

时间:2020-07-23 10:38:12

标签: python-3.x operating-system

我正在尝试导入python模块 从pbi->后端-> to_pbi.py 而我的主要模块是obiee-> backend-> backend_migration 怎么做?

check this pickture

1 个答案:

答案 0 :(得分:0)

您可以为此使用importlib

直接取自文档:

文件夹结构:

├── bar
│   ├── __init__.py
│   └── module_bar.py
└── foo
    ├── __init__.py
    └── module_foo.py

$ cat bar/__init__.py
from . import module_bar

$ cat bar/module_bar.py

def run():
    print("module_bar imported")


$ cat foo/module_foo.py
import importlib.util
import sys

def load_module():
    fn = "custom"    
    fp = "/home/../bar/__init__.py"
    spec = importlib.util.spec_from_file_location(fn,fp)
    module = importlib.util.module_from_spec(spec)
    sys.modules[spec.name] = module
    spec.loader.exec_module(module)
    return module

print(load_module().module_bar.run())

$ python3.8 foo/module_foo.py
module_bar imported