اولش بهتره با معتی درست چند تا لغت آشنا بشیم

iterate = تکرار کردن

iterable = قابل تکرار

iterator =  تکرار کننده

iterator یک object است که دارای تعداد قابل شمارشی از مقادیر است. iterator  یک object است که می توان بر روی آن تکرار کرد، به این معنی که شما می توانید از تمام مقادیر عبور کنید. از نظر فنی، در پایتون، یک تکرارکننده، شی‌ای است که پروتکل تکرارکننده را پیاده‌سازی می‌کند که متشکل از متدهای __iter__() و __next__() است.

 

 

حالا iter و next چچوری کار میکنن؟

فرض کنید ما یک متغیر داریم که داخل اون لیستی هست که خود اون لیست داخل iter قرار گرفته. متوجه نشدید؟ به این شکل:

([BMW,BENZ,FERRARI])cars =iter

خب حالا ما میخوایم به ترتیب از این لیست آیتم هاشو بیرون بکشیم اینجاس که باید از next استفاده کرد. چطوری؟

print(next(x))
print(next(x))
print(next(x))

 

هر خط برای یک آیتم کاربرد داره و خروجی به نظرتون چجوری میشه؟ خودتون تستش کنید

میشه به جای این کار خیلی ساده تر از شماره خونه هر آیتم استفاده کرد و اونارو خارج کرد یا از حلقه ها استفاده کرد ولی بعضی وقتا تنوع هم جالبه ...