python - 基于三元运算符的 luigi 任务
问题描述
我有一个 DAG 如下所示的要求
-> Task C -> Task D
|
Task A -> Task B -
|
-> Task E -> Task F
任务 B 有一个 python 三元运算符,它决定在运行时执行的方向/腿,即运行时流程将是(任务 C,任务 D)或(任务 E,任务 F)
我们如何在 luigi task requires function 下定义它?任何想法或代码片段将不胜感激。
解决方案
您可以定义动态依赖。
我认为在您的示例中,您将有一项任务G
取决于B
并基于B
产量C
和D
或E
和的输出F
import luigi
class GTask(luigi.Task):
def requires():
return BTask()
def run():
if check_b_outout(self.input()):
yield CTask()
yield DTask()
else:
yield ETask()
yield FTask()
推荐阅读
- python - 如何获取在 URL 上设置的外键并在 django CreateView 上使用它
- snowflake-task - 在 Snowflake 中并行执行多个 SQL 插入语句
- navigation - this.props.navigation 始终未定义
- c++ - 在c中同时将两个int作为输入后不能将char作为输入
- python - 在同一数据框中递归使用 set 函数
- c# - 如何调试 HttpHandler
- azure-devops - 使用 Linux Build 构建时,Azure Devops 无法在 nuget 包中找到文件
- javascript - 如何在 Typescript 中检测循环依赖
- java - .\gradlew build 显示“任务 ':applyBinaryPatches' 执行失败。> java/util/jar/Pack200”
- react-final-form - 另一个字段更改后字段更改时的反应最终表单句柄以及为什么formspy运行2次?