Python 如何在Luigi中获取所需的上一个任务输出的文件名

Python 如何在Luigi中获取所需的上一个任务输出的文件名,python,pipeline,luigi,Python,Pipeline,Luigi,在我读过的Luigi示例中,当您想要使用前一个必需任务的输出文件时,您可以这样做 @requires(TaskB) class TaskA(luigi.Task): def run(self): with self.input().open('r') as input: input.read()...something else etc 因此,当您调用input 但是我想做一些不同的事情。我需要该文件的完整文件名。我还不需要打开它,只需要文件名就

在我读过的Luigi示例中,当您想要使用前一个必需任务的输出文件时,您可以这样做

@requires(TaskB)
class TaskA(luigi.Task):
    def run(self):
        with self.input().open('r') as input:
            input.read()...something else etc
因此,当您调用
input

但是我想做一些不同的事情。我需要该文件的完整文件名。我还不需要打开它,只需要文件名就可以将它作为参数传递给某个函数


如何获取上一个任务的输出文件名?

我认为在您的例子中,
self.input()
是一个很好的例子

您可以尝试
self.input().path
获取路径

编辑:

如果
TaskB
定义了多个输出,例如列表,则必须执行以下操作:

self.input()[0].path
或者,您可以对其进行迭代。 尽管如此,拥有多个输出并不重要


如果
TaskA
定义了多个输入,那么访问输入的方法是我认为在您的例子中,
self.input()
是一个

您可以尝试
self.input().path
获取路径

编辑:

如果
TaskB
定义了多个输出,例如列表,则必须执行以下操作:

self.input()[0].path
或者,您可以对其进行迭代。 尽管如此,拥有多个输出并不重要


如果
TaskA
定义了多个输入,则访问输入的方法是

谢谢!我听说,有时前一个任务
output
可以给出一个文件列表(而不是一个文件)。有可能吗?谢谢!我听说,有时前一个任务
output
可以给出一个文件列表(而不是一个文件)。有可能吗?