Generator در پایتون چگونه کار میکند
خلاصه
1405/06/05
:کلاس `Generator` در پایتون با استفاده از کلمه کلیدی `yield` کار میکند تا یک **مولد (Generator)** بسازد. به جای اینکه کل مجموعه داده را در حافظه بارگذاری کند، مولدها به صورت
:کلاس `Generator` در پایتون با استفاده از کلمه کلیدی `yield` کار میکند تا یک **مولد (Generator)** بسازد.
به جای اینکه کل مجموعه داده را در حافظه بارگذاری کند، مولدها به صورت **تنبلکننده (Lazy)** کار میکنند؛ یعنی مقادیر را فقط زمانی که درخواست شوند، یکی یکی تولید و برمیگردانند.
**نکات اصلی:**
1. **استفاده از `yield`**: هر تابعی که شامل دستور `yield` باشد، بهجای بازگشت یک مقدار نهایی (با `return`)، یک مولد ایجاد میکند.
2. **اجرایی بودن**: وقتی تابع فراخوانی میشود، اجرا نمیشود؛ بلکه یک شیء مولد (Generator Object) برمیگردد که قرار است در زمان نیاز مقادیر را تولید کند.
3. **تکرار**: برای دریافت مقادیر از آن، باید روی آن حلقه بزنید یا متدهای مانند `next()` و `list()` را استفاده کنید تا فرایند "اجرای مجدد" (resuming) تابع پس از هر بار توقف با `yield` انجام شود.
این روش باعث صرفهجویی چشمگیر در مصرف حافظه هنگام کار با دنبالههای بسیار بزرگ میشود.
برخی از محصولات شرکت مهندسی آبان رایان البرز
سایر مقالات آموزشی شرکت نرم افزاری آبان رایان البرز :
- نقش Decorator در پایتون چیست
- List و Tuple چه تفاوتهایی دارند
- انواع دادهها در پایتون چیست
- Hibernate در جاوا چگونه عمل میکند
- Spring Boot چه مزایایی دارد
- Stream API در جاوا چه کاربردی دارد
- Lambda Expression در جاوا چیست
- synchronized در جاوا چگونه کار میکند
- نقش Thread در زبان جاوا چیست
- Virtual Function در C چه کاربردی دارد
- نقش فضای نام Namespace چیست
- چگونه در C کلاس تعریف کنیم
- تفاوت بین اشارهگر و مرجع در C چیست
- ساختار ifelse در زبان C چگونه است
- چگونه با زبان C یک فایل را باز و ویرایش کنیم
- نقش Webhook در تعامل بین سرویسها چیست