0

我想通过 nodes.py 文件中的类来组织节点函数。例如,与清理数据相关的函数在“CleanData”类中,带有@staticmethod 装饰器,而其他函数将留在“Other”类中,没有任何装饰器(这些类的名称仅具有代表性)。在管道文件中,我尝试导入类的名称、节点的名称和以下方式:CleanData.function1(它给出了一个错误)并且它们都不起作用。如果可能的话,我怎样才能从类中调用节点?

4

1 回答 1

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,
            )
        ]
    )

那应该工作。

于 2019-11-08T10:45:53.537 回答