با سلام. در بخش پانزدهم از سری مباحث آموزش پایتون، به معرفی حلقه for  پرداخیتم. در این جلسه به آموزش پایتون – توابع خواهیم پرداخت.

یک تابع مجموعه ای از کدهاست که تنها زمانی اجرا می شود که فراخوانی شود. می توان داده هایی را در قالب پارامترهایی به عنوان ورودی به تابع معرفی کرد. همچنین تابع می تواند داده هایی را به عنوان خروجی برگرداند.


آموزش پایتون – توابع


ساخت تابع

در پایتون، یک تابع با استفاده از کلیدواژه def، مطابق زیر تعریف می شود.

defmy_function():

print(“Hello from a function”)

فراخوانی یک تابع

برای فراخوانی یک تابع، از نام آن به همراه پرانتز مطابق زیر استفاده می شود. برای فهم بیشتر روی لینک کلیک کنید. این مثال را با استفاده از تابع print امتحان کنید. چه اتفاقی می افتد؟چرا؟

defmy_function():
print(“Hello from a function”)

my_function()


آموزش پایتون – توابع


پارامترها

پارامترها بعد نام تابع درون پرانتز، مطابق زیر مشخص می شوند. یک تابع می تواند پارامترهای زیادی داشته باشد که با استفاده از ویرگول جدا می شوند. برای فهم بیشتر موضوع روی مثال کلیک کنید. در این مثال fname پارامتر است که می تواند مقدارEmilبپذیرد.

defmy_function(fname):
print (fname + ” Refsnes”)

my_function(“Emil”)
my_function( “Tobias”)
my_function( “Linus”)

مقدار پارامتر پیش فرض

فرض کنید بخواهیم در تابعی پارامتری را از کاربر بگیریم. اما اگر کاربر پارامتری را وارد نکرد، یک مقدار مشخص درون تابع وارد شود تا خطایی رخ ندهد. برای این منظور از پارامتر پیش فرض استفاده می شود. نحوه تعریف آن به شکل زیر است. برای فهم بیشتر موضوع کلیک کنید. در این مثال، Norwayپارامتر پیش فرض است.

defmy_function(country =“Norway”):
print(“I am from “ + country)

my_function(“Sweden”)
my_function( “India”)
my_function()

بازگرداندن یک مقدار (خروجی تابع)

اگر بخواهیم تابع مقداری را به عنوان خروجی بازگرداند، باید از کلیدواژهبه هنگام تعریف آن استفاده کنیم و مقداری که قرار است برگردانده شود را نیز مطابق زیر جلوی آن بنویسیم. برای فهم بهتر کلیک کنید. این مثال را بدون تابع print امتحان کنید. چه اتفاقی می افتد؟ چرا؟

defmy_function(x):
return5 * x

print(my_function(3))


آموزش پایتون – توابع


Recursion

پایتون function recursion را می پذیرد. function recursion یعنی تعریف یک تابع که خودش را فراخوانی می کند. recursion یک مفهوم معمول در ریاضیات و برنامه نویسی است. با استفاده از این مفهوم می توان یک حلقه در داده ها ایجاد کرد. برای استفاده از این ویژگی باید خیلی با احتیاط عمل کرد. چرا که ممکن است تابعی تعریف شود که هیچگاه متوقف نمی شود یا توان پردازشی و حافظه زیادی را اشغال می کند. اما اگر درست استفاده شود موجب بهینه شدن برنامه خواهد شد. مثال زیر یک نمونه از function recursion است. برای مشاهده کامل مثال و نتایج آن کلیک کنید.

def tri_recursion(k):
if(k>0):
result = k+tri_recursion(k- 1)
print(result)
else:
result = 0
returnresult

print(“\n\nRecursion Example Results”)
tri_recursion( 6)

در این مثال، تابع مجموع اعداد طبیعی از ۱ تا k را محاسبه می کند. تابع زمانی متوقف می شود که شرط if برقرار بوده و k بزرگتر از ۰ نباشد.

منبع: w3schools.com

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

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