آرگومان تابع در برنامه نویسی پایتون

4 سال پیش
امتیاز دهید post

آرگومان تابع در برنامه نویسی پایتون

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، آرگومان تابع در برنامه نویسی پایتون (function-argument) را فرا می گیرید و می توانید تابعی را تعریف کنید که تعداد متغیر آرگومان ها را بگیرد. در این مقاله، شما می آموزید که چنین توابع را با استفاده از استدلال های پیش فرض، کلیدواژه و دلخواه تعریف کنید.

پیشنهاد ویژه : پکیج آموزش پایتون

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

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

 

خروجی

 

در اینجا ، تابع ()greet دو پارامتر دارد.

از آنجا که ما این تابع را با دو آرگومان فراخوانی کرده ایم، به راحتی اجرا می شود و هیچ خطایی نداریم.

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

 

 

 

آرگومان ‌های متغیر تابع در پایتون

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

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

 

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

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

با استفاده از عملگر تخصیص (=) می توانیم مقدار پیش فرض آرگومان را ارائه دهیم. به عنوان مثال.

 

خروجی

 

در این تابع پارامتر name مقدار پیش فرض ندارد و در هنگام فراخوانی مورد نیاز است (اجباری).

از طرف دیگر ، پارامتر msg مقدار پیش فرض Good morning را دارد. بنابراین، هنگام فذاخوانی اختیاری است. اگر مقداری ارائه شود، مقدار پیش فرض را بازنویسی می کند.

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

این بدان معناست که بگوییم، آرگومانهای غیر پیش فرض نمی توانند آرگومانهای پیش فرض را دنبال کنند. به عنوان مثال، اگر هدر تابع را در بالا تعریف کرده بودیم:

 

با خطای زیر مواجه خواهیم شد:

 

آرگومان های کلیدواژه در پایتون

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

به عنوان مثال، در تابع ()greet، هنگامی که ما آن را به عنوان greet(“Bruce”, “How do you do?”) فراخوانی می کنیم ، مقدار “Bruce” به نام آرگومان اختصاص می یابد و به طور مشابه “How do you do?” ” به msg.

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

 

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

داشتن یک استدلال موضعی بعد از استدلال های کلیدواژه منجر به خطا خواهد شد. به عنوان مثال ، فراخوانی عملکرد به شرح زیر است:

 

منجر به خطا خواهد شد:

 

آرگومان‌ های دلخواه در پایتون

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

در تعریف تابع، ما از علامت ستاره (*) قبل از نام پارامتر برای نشان دادن این نوع آرگومان استفاده می کنیم. به عنوان مثال.

 

خروجی

 

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

منبع.

لیست جلسات قبل آموزش برنامه نویسی پایتون

  1. آموزش نصب و اجرای برنامه نویسی پایتون
  2. کلیدواژه ها و شناسه های برنامه نویسی پایتون
  3. دستورات، تورفتگی ها و کامنت ها در برنامه نویسی پایتون
  4. متغیرها، ثابت ها و لیترال ها در برنامه نویسی پایتون 
  5. انواع داده ها در برنامه نویسی پایتون
  6. تبدیل نوع در برنامه نویسی پایتون
  7. ورودی، خروجی و وارد کردن در برنامه نویسی پایتون
  8. عملگرها در برنامه نویسی پایتون
  9. نام و دامنه در برنامه نویسی پایتون
  10. دستور شرطی if…else در برنامه نویسی پایتون
  11. حلقه for در برنامه نویسی پایتون
  12. حلقه while در برنامه نویسی پایتون
  13. دستورات break و continue در برنامه نویسی پایتون
  14. دستور pass در برنامه نویسی پایتون
  15. توابع در برنامه نویسی پایتون
امتیاز دهید post
0
برچسب ها :
نویسنده مطلب saber

دیدگاه شما

بدون دیدگاه