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

توابع، قابلیت این را دارند که مقادیری را دریافت کرده، تغییراتی روی آنها اعمال کند و یک خروجی تحویل دهند.

توابع می توانند یک یا چند ورودی بگیرند و یک خروجی ارائه دهند. 

برای مثال می توانند دو عدد را دریافت کنند و عملیات جمع را روی آن ها اجرا کند و حاصل را به عنوان خروجی ارائه دهند.

نحو نوشتار (syntax) تابع در پایتون

تابع در پایتون با دستور def ایجاد می شود و یک نام دلخواه را می پذیرد و عملیات های تابع، در یک بخش دستور def نوشته می شود که باید دارای یک تورفتگی باشند.

برای مثال یک تابع با نام Hello را ایجاد می کنیم  که در آن یک رشته چاپ می شود.

def Hello():
  print("سلام این یک تابع است.")

نکته: در پایتون نام تمام توابع باید منحصر به فرد باشد و نمی توانید نام تکراری برای توابع یک برنامه انتخاب کنید.

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

برای اجرا شدن تابع، باید آنها را فراخوانی کرد.

این فراخوانی می تواند در هربخش از برنامه و با نام تابع و علامت () صورت می گیرد.

function()

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

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

این پارامترها هنگام ایجاد تابع باید نوشته شود تا تابع بدون داشتن این پارامترها ایجاد نشود.

برای مثال یک تابع به نام function ایجاد می کنیم که دو پارامتر عدد می پذیرد و مجموع دو عدد را پرینت می کند .

def function(num1 , num2):
    print(num1 + num2)

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

function(1 , 2)

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

به صورت ساده می توان آرگومان و پارامتر را یکسان دانست. ولی از نظرتابع تفاوت هایی دارن:

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

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

پارامتر های دلخواه در تابع پایتون

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

def function(*names):
  print("name is " + name[1])

key و value در توابع پایتون

هنگام فراخوانی یک تابع، می توان با دستور key = value پارامترها را مقداردهی کرد.

function(name1 = "alireza", name2= "ali", name3= "reza")

کلیدهای دلخواه در تابع پایتون

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

def function(**names):
  print("His last name is " + names["lname"])

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

توابع می توانند یک پارامتر را به طور پیش فرض در خود ذخیره کنند.

در صورتی که یک مقدار خالی از تابع را فراخوانی کنید ، مقدار پیشفرضی که از قبل در تابع ایجاد کردید را اجرا می کند.

def function(name= "alireza"):
  print("I am  " + name)

لیست ها در تابع پایتون

ما در داخل پارامترهای تابع می توانیم هر نوع داده ای را وارد کنیم. لیست ها نوعی از این داده ها هستند که به صورت متغیر می توان آنها را در بخش پارامترها وارد کرد.

def function(users):
  for x in users:
    print(x)

برگرداندن(return) مقدار تابع در پایتون

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

این دستور مقدار انتهایی تابع را برمی گرداند و در ادامه می توانیم این مقدار را در یک متغیر بریزیم  و از آن استفاده کنیم.

برای مثال یک تابع ایجاد می کنیم که یک رشته را برمی گرداند.

def function():
    return("سلام این یک تابع است.")

تابع را فراخوانی می کنیم و رشته برگردانده شده را در متغیر x ذخیره می کنیم.

x = function()
توسعه دهندگان
علیرضا چمنی