ਜਨਰੇਟਰ ਇੱਕ ਫੰਕਸ਼ਨ ਹੈ ਜੋ ਮੁੱਲਾਂ ਨੂੰ ਆਲਸੀ ਤਰੀਕੇ ਨਾਲ, ਇੱਕ ਵਾਰ ਇੱਕ, yield ਕੀਵਰਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ return ਦੀ ਥਾਂ ਤੇ ਪੈਦਾ ਕਰਦਾ ਹੈ। ਇਹ ਪੂਰੇ ਨਤੀਜੇ ਨੂੰ ਮੈਮੋਰੀ ਵਿੱਚ ਬਣਾਉਣ ਦੀ ਬਜਾਏ ਹਰ ਮੁੱਲ ਨੂੰ ਮੰਗ ਅਨੁਸਾਰ ਗਣਨਾ ਕਰਦਾ ਹੈ — ਵੱਡੇ ਜਾਂ ਅਨੰਤ ਕ੍ਰਮ ਲਈ ਆਦਰਸ਼।
yield vs return
():
[i ** i (n)]
():
i (n):
i **
sq gen_squares():
(sq)
