Python package/module 从子包导入函数

Python package/module import functions from sub packages

我正在构建一个 python 包来对工作中的系统进行一些审计。到目前为止,我已经能够使用自由浮动的 .py 文件和 运行 将主文件与模块文件放在同一目录中。在高层次上,我想创建一个包,其中包含多个用于特定审计的子包。 bigpackage>subpackage>modulefile.py 我希望能够从模块文件中导入特定的 functions/methods。我怎样才能做到这一点?
我为我的所有包准备了 __init__ 文件,并且可以使用像 modulefile.function1(bla, bla, bla) 这样的点运算符使用通常的 from bigpackage import modulefile 和 运行 来访问它们 我希望能够直接导入特定函数,这样我就可以 运行 而无需使用像 function1(bla, bla, bla) 这样的点运算符。

from bigpackage.subpackage.modulefile import function1, function2

function1(bla, bla, bla)

来自: How to import a module given the full path?

我的目录布局:

/my_package
    /__init__.py
    /testfile.py
    /my_module
        /__init__.py

方法一:

import imp
my_module = imp.load_sourc('my_module','.my_module/__init__.py')
my_module.function1()

或限制进口:

import sys
import os
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
from my_module import function1
function1()