以前に質問されていないことを願っていますが、これらのうちどれがより優れている/高速である/より「pythonic」であると考えられていますか? チェック後に中断:
while True:
#returns either a `page` or None
p += 1
page = self.page_has_articles(p)
if page:
yield page
else:
break
または最初のチェックとブレーク:
while True:
p += 1
page = self.page_has_articles(p)
if not page:
break
yield page