A generator in Python is a special type of iterator that allows you to iterate over a sequence of values lazily, i.e., one at a time, on demand, without storing the entire sequence in memory.