Python 是否可以循环一个完美的参数?

Python 是否可以循环一个完美的参数?,python,python-3.x,etl,prefect,Python,Python 3.x,Etl,Prefect,我有以下资料: 当我通过flow.run()运行此命令时,我得到以下错误: TypeError: 'Parameter' object is not iterable 是否有可能对其进行迭代?如果有,如何迭代?对于刚接触延迟计算范式的人来说,这是一个非常常见的绊脚石 完美参数s(更一般地说,任何完美任务)表示将来将运行的工作单元。当您构建流时,您正在指定稍后将运行的工作单元之间的依赖关系。这是一个强大的抽象,因为它允许您在运行工作流之前对工作流的某些属性进行推理 需要注意的是,您需要区分构建时

我有以下资料:

当我通过
flow.run()
运行此命令时,我得到以下错误:

TypeError: 'Parameter' object is not iterable

是否有可能对其进行迭代?如果有,如何迭代?

对于刚接触延迟计算范式的人来说,这是一个非常常见的绊脚石

完美
参数
s(更一般地说,任何完美任务)表示将来将运行的工作单元。当您构建流时,您正在指定稍后将运行的工作单元之间的依赖关系。这是一个强大的抽象,因为它允许您在运行工作流之前对工作流的某些属性进行推理

需要注意的是,您需要区分构建时可用的内容(在运行流之前)和运行时可用的内容(在流运行的上下文中)。在您的例子中,您使用的是一条Perfict无法知道的知识,即您的参数将返回一些iterable。此外,即使Perfict可以推断参数输出是可写的,它也无法知道将返回多少个元素(每个流的运行都可能不同!)

考虑到所有这些,Perfict使用一个称为“映射”的概念来处理这些“延迟迭代”:

在您的情况下,您可以将代码重构为:

以流(“我的流”)作为流:
URL=参数(“URL”,默认值=['url1','url2'])
结果=获取url.map(url)

它将为参数返回值中的每个值动态生成
get\u url
的副本。

感谢您的详细解释。它的“完美”清晰:)
TypeError: 'Parameter' object is not iterable