生成器_(計算機編程)

生成器 （ Generator ） ， 是計算機科學中特殊的子程序 。 實際上 ， 所有生成器都是迭代器 。 生成器非常類似於返回數組的函數 ， 都是具有參數 、 可被調用 、 產生一系列的值 。 但是生成器不是構造出數組包含所有的值並一次性返回 ， 而是每次產生一個值 ， 因此生成器看起來像函數 ， 但行爲像迭代器 。 生成器可以用更有表達力的控制流結構實現 ， 如協程或頭等計算續體 。 生成器 ， 也被稱作半協程 （ semicoroutine ） ， 是特殊的 、 能力更弱的協程 ， 總是在傳回一個值時把控制交還給調用者 ， 而不是像協程那樣指出另一個協程繼續執行 。