Python بازگشت تابع را نیز می پذیرد، به این معنی که یک تابع تعریف شده می تواند خود را فراخوانی کند.
بازگشت یک مفهوم رایج ریاضی و برنامه نویسی است. یعنی یک تابع خودش را فراخوانی می کند. این مزیت این است که می توانید داده ها را برای رسیدن به نتیجه حلقه بزنید.
توسعهدهنده باید در مورد بازگشت بسیار محتاط باشد، زیرا میتواند به راحتی وارد نوشتن تابعی شود که هرگز پایان نمییابد، یا تابعی که از مقدار زیادی حافظه یا قدرت پردازنده استفاده میکند. با این حال، زمانی که به درستی نوشته شود، بازگشت می تواند یک رویکرد بسیار کارآمد و از نظر ریاضی ظریف برای برنامه نویسی باشد.
در این مثال، tri_recursion() تابعی است که ما تعریف کردهایم تا خود را ("recurse") فراخوانی کند. ما از متغیر k بهعنوان داده استفاده میکنیم که هر بار که تکرار میکنیم (-1) کاهش مییابد. بازگشت زمانی به پایان می رسد که شرط از 0 بزرگتر نباشد (یعنی زمانی که 0 باشد).
ممکن است برای یک توسعهدهنده جدید مدتی طول بکشد تا بفهمد این دقیقا چگونه کار میکند، بهترین راه برای فهمیدن این است که آن را آزمایش و اصلاح کنید.