python - 如何从nodes.py文件中的类运行函数?
问题描述
我想通过 nodes.py 文件中的类来组织节点函数。例如,与清理数据相关的函数在“CleanData”类中,带有@staticmethod 装饰器,而其他函数将留在“Other”类中,没有任何装饰器(这些类的名称仅具有代表性)。在管道文件中,我尝试导入类的名称、节点的名称和以下方式:CleanData.function1(它给出了一个错误)并且它们都不起作用。如果可能的话,我怎样才能从类中调用节点?
解决方案
我不完全确定你得到的错误是什么。如果你真的试图这样做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,
)
]
)
那应该工作。
推荐阅读
- c++ - 具有唯一指针的 C++ std::future 正在同步调用
- python - 带有无效 HTML 代码的 XML 解析错误 (Elementtree)
- python - openpyxl:使用 Python 创建 Excel 工作表时,如何使用列表和数据验证?
- java - 使用 JNDI 在 Java 中将用户添加到 LDAP 服务器的问题
- microsoft-graph-api - Graph API:中断分页的正确方法是什么
- python - PyWinAuto:找不到进程
- c++ - ceil() 函数的意外结果
- r - 如何从纵向研究的数据框中对使用不同测量工具测量的所有行进行子集化?
- react-native - 世博会中的方向变化监听器反应原生不触发?
- android - 如何使用 Azure Pipelines 自动增加 Android 应用的构建 ID 和版本号