如何在Python中编写泛型子类生成器方法

如何在Python中编写泛型子类生成器方法,python,generator,Python,Generator,我有以下方法结构: def source_firing(self, source_index, delta_pre_out): x = super().source_firing(source_index, delta_pre_out) # do something A yield next(x) # do something B yield next(x) # do something C 想法是让超类跟随。不幸的是,C不是由父类完成的,除非

我有以下方法结构:

def source_firing(self, source_index, delta_pre_out):
    x = super().source_firing(source_index, delta_pre_out)

    # do something A
    yield next(x)
    # do something B
    yield next(x)
    # do something C
想法是让超类跟随。不幸的是,C不是由父类完成的,除非我添加:

    try:
      next(x)
    except StopIteration:
      pass
    else:
      raise Exception

有更好的模式吗?

我很难弄明白你在问什么。。。你能说得更清楚些吗?有什么问题?什么是C?你能举一个简单的例子说明我们可以复制/粘贴/运行/复制吗?@mgilson:这是基于这个问题:我们的想法是做一系列的任务。调用方将在遍历生成器时更新各种内容。C是在父级执行的任何操作,而不是“do something C”