An iterable हे कोणतेही आहे जे तुम्ही लूप करू शकता (list, string, dict); an iterator ही ऑब्जेक्ट आहे जी वास्तविक पुनरावृत्ती करते, एक वेळी मूल्ये तयार करते आणि त्याची स्थिती ट्रॅक करते. हा फरक Python मध्ये for loops कसे काम करते हे स्पष्ट करते.
दोन प्रोटोकॉल
Iterable → has __iter__() → returns an iterator
Iterator → has __next__() → returns the next value (and __iter__ returning itself)
