场景:
假设有两个模块 module_a 和 module_b, 两个模块各包含一些方法
需求:
尝试从 module_a 中导入 func_1, 若 module_a 中不包含 func_1, 则从 module_b 导入 func_1, 若两个模块均不包含 func_1 抛出错误.
解决思路:
这个问题涉及到方法的动态导入, 使用类中的函数重载可以很容易解决这个问题, 在不使用类的情况下, 可以考虑使用 importlib 模块的 import_module 这个方法, 其实我们在 python 文件的开头使用 import 导入模块时, 本质上也是调用了 import_module.
代码实现:
def import_fuction(func_name):
'''动态导入方法'''
try:
module_path = 'module_a'
module