×

گزارش خرابی

در این بخش درباره انواعی از توابع پیشرفته در پایتون صحبت می‌کنیم. یکی از این توابع ، توابع سازنده یا generator هستند. این توابع برای تکرار یا iteration کاربرد دارد. این توابع شباهت زیادی به توابع عادی در پایتون دارند. از جمله تفاوت های این توابع استفاده از عبارت yield به جای return در هنگام گرفتن خروجی از توابع است. تفاوت return با yield  این است که در هنگام استفاده از return کل تابع متوقف میشه ولی در حالتی که از عبارت yield استفاده کنیم. تابع مورد نظر pause شده و مقادیرو state ها رو نگهداری می‌کند و بعدا در صورت فراخوانی از ادامه حالت ها شروع به اجرای تابع می‌کند. این قابلیت به برنامه های ما کمک می‌کند تا سریع تر اجرا شوند و حافظه مصرفی برای برنامه ها را نیز بهینه تر مصرف می‌کند.