2

我只是尝试从文档中运行 python luigi示例:

class TaskA(luigi.Task):
    def output(self):
        return luigi.LocalTarget('xyz')

class FlipLinesBackwards(luigi.Task):
    def requires(self):
        return TaskA()

    def output(self):
        return luigi.LocalTarget('abc')

    def run(self):
        f = self.input().open('r') # this will return a file stream that reads from "xyz"
        g = self.output().open('w')
        for line in f:
           g.write('%s\n', ''.join(reversed(line.strip().split())))
        g.close() # needed because files are atomic

我使用命令行运行它:

python Luigi_Test.py FlipLinesBackwards --local-scheduler

我的印象是这会在我运行它的目录中创建一个文件,但它没有?

难道我做错了什么?

4

1 回答 1

7

的定义TaskA没有任何意义。它可能是一个ExternalTask.

class TaskA(luigi.ExternalTask):
    def output(self):
        return luigi.LocalTarget('xyz')

这意味着您必须编写文件的内容xyz

echo hi >> xyz
echo hello >> xyz

然后运行 ​​luigi 工作流程。

于 2015-08-26T07:40:39.773 回答