پایتون

جلسه ۲۱: ساختن تابع در پایتون

در این درس یاد میگیریم که چگونه یک تابع را بسازیم.

اجزای یک تابع

ما یادگرفتیم که توابع چه هستند و چرا از آنها استفاده میکنیم. اما چگونه میتوانیم یک تابع را خودمان بسازیم؟ در پایتون میتوانیم با استفاده از کلمه def به شکل زیر یک تابع را تعریف کنیم:

در عکس بالا function name در واقع اسمی است که ما برای نام تابعمان انتخاب میکنیم.

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

پیاده‌سازی

حال بیایید برنامه و تابعی بنویسیم که ۴ خط متن را برای ما چاپ کند. این تابع هیچ ورودی ندارد. اسم آن را ما my_print_function گذاشته‌ایم و برای استفاده از این تابع کافیست نام آن را بیاوریم و جلوی آن دو پرانتز برای ورودی ها بگذاریم وسپس چون ورودی‌ای نداریم داخل این پرانتزها را خالی میگذاریم.

def my_print_function():  # No parameters
    print("This")
    print("is")
    print("A")
    print("function")
# Function ended


# Calling the function in the program multiple times
my_print_function()
my_print_function()

و بدین صورت ما اولین تابع خودمان را ساخته‌ایم.میتوان به هر تعداد که مایل باشیم از این تابع استفاده کنیم.

پارامترهای تابع

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

معنای آن این است که میتوانیم یکسری دیتا به تابع بدهیم. این دیتا میتواند توسط تابع برای انجام یک کار مشخص استفاده بشود.

وقتی ما یک تابع را تعریف میکنیم باید تعداد پارامترها و نام آن ها را هم مشخص سازیم.این نام ها فقط برای تابع هستند و تاثیری روی نام متغیرهای خارج از تابع ندارند. پارامترها داخل پرانتز قرار میگیرند و با کاما جدا میشوند.

مقادیر یا متغیرهایی که به پارامترهای تابع میدهیم به اسم آرگومان شناخته میشوند.

در درس قبل ما تابع ()sum را دیدیم. که دو عدد را به عنوان ورودی دریافت میکرد و کوچکترین آن را برای ما مشخص میکرد.

حال بیایید یک شکل ساده از تابع min بسازیم، که کارش این است که کوچکترین مقدار را برای ما چاپ کند. اسم آن را minimum گذاشته ایم.

def minimum(first, second):
    if (first < second):
        print(first)
    else:
        print(second)


num1 = 10
num2 = 20

minimum(num1, num2)

در اینجا ما دو متغیر num1 و num2 را به تابع داده‌ایم. محل قرار گیری پارامترها مهم است. در مورد بالا num1 به عنوان پارامتر اول داده شده است و num2 نیز به عنوان پارامتر دوم.

اگر ما یک تابع را با تعداد ورودی کمتر یا بیشتر نسبت به تعداد مشخص شده در تعریف تابع، فراخوانی کنیم، نرم افزار پایتون به ما ارور خواهد داد.

پارامترهای تابع میتواند هر نوع داده‌ای باشند از یک integer ساده تا یک لیست بزرگ.

عبارت return

در کدهای قبلی ما فقط تابعی را تعریف کردیم که یک مقداری را برای ما print میکرد. آن‌ها هیچ مقداری را به ما برنمی‌گرداندند. اما اگر بیشتر توجه کنید توابع هایی که بررسی کردیم یک مقدار را هم به ما برمی‌گرداندند. به عنوان مثال تابع len یک مقدار integer را که مشخص کننده طول داده بود را به ما برمی‌گرداند.

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

حال تابع minimun مان را تغییر میدهیم تا به جای اینکه خروجی را چاپ کند، کوچکترین مقدار را به ما بدهد. اکنون این تابع مانند تابع داخلی min کار میکند اما با دو پارامتر.

def minimum(first, second):
    if (first < second):
        return first
    return second


num1 = 10
num2 = 20

result = minimum(num1, num2)  # Storing the value returned by the function
print(result)

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

این یک تمرین خوب است که همه توابع را تعریف کنیم و بعد شروع به کدنویسی اصل کدمان کنیم. آن‌ها را ابتدا تعریف کنیم و بعد در هرجای کد آن ها را استفاده کنیم.

در درس بعدی، در مورد scope های توابع یاد میگیریم.

نوشته های مشابه

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

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

دکمه بازگشت به بالا