我想按nodes.py文件中的类组织节点功能。例如,与清洁数据相关的函数在带有@staticmethod装饰器的“ CleanData”类中,而其他函数将在“ Other”类中保留,而没有任何装饰器(这些类的名称仅是代表性的)。在管道文件中,我尝试导入类的名称,节点的名称以及以下方式:CleanData.function1(产生错误),但它们均无效。请问如何从类中调用节点?
答案 0 :(得分:1)
我不确定您得到的错误是什么。如果您实际上是想做from .nodes import CleanData.function1
,那是行不通的。导入在Python中不像那样工作。如果您这样做:
nodes.py
具有:
class CleanData:
def clean(arg1):
pass
和pipeline.py
具有:
from kedro.pipeline import Pipeline, node
from .nodes import CleanData
def create_pipeline(**kwargs):
return Pipeline(
[
node(
CleanData.clean,
"example_iris_data",
None,
)
]
)
应该起作用。