ایجاد تابع در پایتون

تعریف تابع در پایتون

تابع در برنامه‌نویسی مجموعه برنامه‌هایی می‌باشد که معمولا در برنامه‌های مختلف تکرار می‌شوند. در واقع یک بار به صورت Function تعریف می‌شوند تا از تکرار خطوط اضافه جلوگیری شود و زمان برنامه‌نویسی را کاهش دهد.

ایجاد تابع در پایتون

برای تعریف کردن یک تابع  از کلمه def در ابتدا استفاده می‌کنیم. سپس اسم تابع را نوشته و یک پرانتز مقابل اسم تابع قرار می‌دهیم و دو نقطه را می‌گذاریم. در خط بعد می‌توانیم راهنمای تابع را به صورت Docstring در داخل سه کوتیشن بنویسیم. سپس عملیاتی که قرار است انجام دهیم را می‌نویسیم. برای فراخوانی، اسم تابع را به همراه پرانتز نوشته و سپس run می‌گیریم.

ایجاد تابع در پایتون

 

اگر بخواهیم توضیحاتی که در Docstring یک تابع وجود دارد را نمایش دهیم، از تابع ()help استفاده می‌کنیم. اسم تابع مورد نظر را به عنوان آرگومان تابع ()help در نظر می‌گیریم.

docstring در تابع

 

به متغیری که در داخل پرانتز مقابل اسم Function می‌نویسیم آرگومان می‌گویند. که در واقع  این متغیر در داخل تابع مورد استفاده قرار می‌گیرد. همچنین تعداد آن با توجه به هر تعدادی که برای عملیات مورد نظر نیاز است، می‌تواند تغییر کند.

آرگومان در Function در پایتون

 

در تابع گاهی نیاز به گرفتن خروجی می‌باشد در این صورت از کلمه return  استفاده می‌کنیم و مواردی که می‌خواهیم با فراخوانی تابع به دست بیاوریم را در مقابل return می‌نویسیم. در هنگام فراخوانی اسم Function را برابر با یک متغیر می‌گذاریم.  از تابع print برای نمایش خروجی استفاده می‌کنیم.

return در پایتون

 

در تابع برای آرگومان‌ها می‌توان یک پیش‌فرض در نظر گرفت. در این صورت اگر هیچ چیز بجای آن آرگومان قرار نگیرد مقدار پیش‌فرض در نظر گرفته می‌شود.

آرگومان پیش فرض در تابع

 

می‌توان در Function ها از دستورات شرطی نیز استفاده کرد.

دستورات شرطی در تابع

 

در تابع بجای استفاده از دستورات شرطی، می‌توان در مقابل return تمام شروط را با استفاده از or یا and نوشت.

دستورات شرطی در تابع

 

args * در تابع

گاهی اوقات از تابع یا متدی استفاده می‌شود که تعداد ورودی‌های آن مشخص نیست. در نتیجه ورودی به صورت *args نمایش داده می‌شود. در *args خروجی به صورت یک Tuple از ورودی‌ها می‌باشد.

*args در تابع

 

به دلیل اینکه ورودی‌های تابع در *args به صورت دنباله‌ایی از اعداد می‌باشند، می‌توان در حلقه‌ها از آن‌ها استفاده کرد.

*args در تابع

 

به جای args به عنوان ورودی تابع، هر اسم دیگه‌ایی می‌توانیم استفاده کنیم.

*args در تابع

kwargs ** در تابع

در kwargs** خروجی به صورت یک Dictionary از ورودی‌های یک Function می‌باشد.

**kwargs در تابع

 

به جای kwargs به عنوان ورودی Function هر اسم دیگه‌ایی می‌توانیم استفاده کنیم.

**kwargs در Function

 

در داخل تابع می‌توان از args* و  kwargs** در کنار هم استفاده کرد. اما  به ترتیب قرار گیری این دو در هنگام فراخوانی تابع باید توجه کرد. به عنوان مثال اگر ابتدا args* و سپس kwargs** را به عنوان آرگومان به تابع داده‌ایم. باید در هنگام فراخوانی تابع نیز داده‌های args را در ابتدا  و سپس داده‌های kwargs را پس از آن بنویسیم.

*args و **kwargs در Function

 

تابع lambda و دستورات filter و map

تابع lambda یک تابع کوچک و بدون نام می‌باشد. این نوع تابع دارای سه جز می‌باشند. جز اول کلمه کلیدی lambda است، جز دوم آرگومان ورودی تابع است که بعد از کلمه lambda قرار می‌گیرد و نمایانگر ورودی تابع است. جز سوم تعریف عملیات درون تابع می‌باشد که بعد از علامت : قرار می‌گیرد.

تابع lambda در پایتون

 

یکی از کاربردهای مهم تابع lambda، استفاده از آن به عنوان تابع filter و map می‌باشد.

دستور map

اعمال یک تابع خاص بر روی یک دنباله، با دستور map صورت می‌گیرد. ورودی اول دستور map، یک تابع است که باید روی لیست اعمال شود که معمولا یک lambda function است. ورودی دوم، نام لیستی است که تابع روی آن اعمال می‌شود.

دستور map در پایتون

دستور filter

دستور filter مانند map عمل می‌کند. با این تفاوت که امکان چک کردن یک شرط را روی تمام اعضای یک لیست فراهم می‌کند. این دستور بر روی توابعی اعمال می‌شود که خروجی آن‌ها به صورت Boolean می‌باشد. یعنی آیتم‌هایی از اعضای لیست به عنوان خروجی هستند که شرط داخل تابع را دارا باشند.

تابع lambda در دستور filter

 

برای آشنایی بیشتر با توابع و نحوه کار با آن‌ها می‌توانید به دوره جامع آموزش زبان برنامه‌نویسی پایتون  آکادمی رسا مراجعه کنید.

0/5 (0 Reviews)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست