我为我的对象提供了一个指向'file.py'的路径,我需要调用一个名为'compress'的方法
file.py
def compress(arg):
return arg-5
other.py
class Algorithm:
def __init__(self, path):
self.path = path #/PATH/TO/file.py
def func(self, arg1):
return self.path.compress(arg1)
当然这是一个虚拟的例子,但我如何以正确的方式实现func?它甚至可能吗?
答案 0 :(得分:3)
使用importlib模块,您可以动态加载相应的路径,然后从该模块调用相应的函数!使用os.path
的简单示例:
import importlib
my_module = importlib.import_module('os.path')
my_module.exists("/non_existing_path")
在这种情况下,您可能需要执行一些其他检查,例如文件存在和函数存在。