Home › coding › python › py generators

Py Generators — Free Python Tutorial

Learn Py Generators in Python with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.

✓ 100% Free ✓ No Login Needed ✓ NCERT / CBSE Aligned ✓ Download as PDF

TL;DR: Learn Py Generators in Python with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.

Written & reviewed by the Syllab.in Academic Team (CBSE/NCERT subject experts) · Updated Jul 14, 2026

🤖 Stuck on any question? Ask Syllab's free AI Tutor for a step-by-step explanation — instant, unlimited, no login.

Py Generators in Python

A generator is a function that returns values one at a time using the yield keyword, instead of returning all values at once. This saves memory when working with large data.

Regular functions use return — they compute everything and hand it all back. Generators yield — they pause, give one value, and resume when you ask for the next.

Python's for loop and next() function work naturally with generators. The iterator protocol requires __iter__() and __next__() methods.

Common use: reading huge files line by line, generating infinite sequences, or building data pipelines without loading everything into memory.

Py Generators — Syntax

def my_generator():
    yield value1
    yield value2
    ...

# Using a generator
for item in my_generator():
    print(item)

# Generator expression (like list comprehension but lazy)
gen = (x**2 for x in range(10))

Learn Py Generators step by step with Syllab's free interactive Python tutorial — runnable code examples, practice exercises and instant AI feedback, all free with no signup. Explore the full Python course →

Explore:

  • Syllabus
  • Practice
  • Mock Tests
  • NCERT Solutions
  • Coding
  • GK Quiz
  • Career Predictor
  • AI Tutor
  • Live Quiz
  • Doubt Solver
  • Microlearning
  • Free Alternatives
  • Kids Zone
  • Study Room
  • Calculators
  • Worksheets

Syllab.in — Free learning for Indian students, Class 1–12