yield generator;使用yield,可以让函数生成一个序列,该函数返回的对象类型是"generator",通过该对象连续调用next()方法返回序列值。
yield中return的作用:
作为生成器,因为每次迭代就会返回一个值,所以不能显示的在生成器函数中return 某个值,包括None值也不行,否则会抛出“SyntaxError”的异常,但是在函数中可以出现单独的return,表示结束该语句。
Example, let's assuming:
generator(1) = 1
generator(2) = 2
The value is generator_address if:
yield generator(1) + generator(2)
But, the value is 3, if:
return generator(1) + generator(2)
网友评论