AppEngine Pipeline Yield - это стандартное использование оператора yield? - PullRequest
1 голос
/ 15 октября 2011

На следующей странице (http://code.google.com/p/appengine-pipeline/wiki/GettingStarted) я видел следующий код в примере использования конвейера AppEngine:

class AddOne(pipeline.Pipeline):

  def run(self, number):
    return number + 1

class AddTwoAndLog(pipeline.Pipeline):

  def run(self, number):
    result = yield AddOne(number)
    final_result = yield AddOne(result)
    yield LogMessage('The value is: %d', final_result)  # Works    

Мой вопрос / путаница касаются оператора yield с правой стороныиз "=". Это стандартный синтаксис / использование Python, или это особый случай, который разрешен / используется только с моделью конвейера? Что здесь происходит?

1 Ответ

2 голосов
/ 16 октября 2011

Назначение из yield является стандартным с Python 2.5.Включает сопрограммы.

См. http://docs.python.org/whatsnew/2.5.html#pep-342-new-generator-features

...