شما می توانید با عضویت در انجمن پرسش و پاسخ درسمن هرگونه سوالی دارید را مطرح کنید


روشهای تعریف و فراخوانی توابع و کار با عبارتهای Lambda


روشهای تعریف و فراخوانی توابع و کار با عبارتهای Lambda
برای دانلود این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

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

 

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

  • استفاده از کلمه کلیدی def و با تعیین پارامتر‌های تابع

توابع برای تعریف باید مانند متغیرها یک نام داشته باشند. توابع به چهار دسته تقسیم می‌شوند

  • تابع‌هایی که ورودی ندارند و خروجی هم ندارند
  • تابع‌هایی که ورودی دارند اما خروجی دارند
  • تابع‌هایی که ورودی ندارند اما خروجی دارند
  • تابع‌هایی که ورودی دارند و خروجی هم دارند

 

مثال: تابعی تعریف کنید که یک رشته را چاپ کند.

 

def PrintHello():

print("Hello Mehdi")

 

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

 

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

  • در زمان فراخوانی تابع باید آرگومانهای ورودی تابع تامین و در صورت وجود خروجی تابع باید خروجی آن توسط دستور return برگشت و در محل فراخوانی دریافت شود.

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

مثال: تابع تعریف شده را فراخوانی کنید.

 

PrintHello()

 

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

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

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

 

def PrintHello(name):

print("Hello "+name)

 

PrintHello("mehdi")

 

در مثال بالا ورودی تابع ما باید رشته باشد و اگر برای تابع رشته ارسال نکنیم برنامه خطا می‌دهد.

مثال: تابعی تعریف کنید که سه عدد از ما گرفته، مجموع و میانگین آنها را چاپ کند.

 

def SumAvg(a,b,c):

s=a+b+c

avg=s/3

print("Sum is :",s)

print("Avg is :",avg)

SumAvg(34,56,221)

 

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

 

def SumAvg(a,b,c=0):

 

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

مثال: تابعی تعریف کنید که دو عدد از ما دریافت کرده و حاصل ضرب آنها را بازگرداند.

 

def mul(a,b):

s=a*b

return s

 

print(mul(20,45))

 

کار با عبارت Lambda

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

 

نام تابع = lambda ورودی‌های تابع : خروجی‌های تابع

 

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

 

MySum=lambda a,b,c : a+b+c


نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.
19 جلسه برای دوره آموزش مقدماتی پایتون

درس 1
مقدمه ای بر زبان برنامه نویسی پایتون
14 دقیقه / رایگان


درس 2
دانلود، نصب و راه اندازی پایتون و IDE های قابل استفاده
25 دقیقه / رایگان


درس 3
کلمات کلیدی، انواع داده ها و شناسه ها در زبان برنامه نویسی پایتون
22 دقیقه / رایگان


درس 4
معرفی انواع عملگرها در زبان برنامه نویسی پایتون
33 دقیقه / رایگان


درس 5
آشنایی با برخی از توابع پر کاربرد زبان پایتون
20 دقیقه / رایگان


درس 6
آشنایی با دستورات شرطی if و if-else در زبان پایتون
24 دقیقه / رایگان


درس 7
یادگیری دستور for و range و for-else در پایتون
29 دقیقه / رایگان


درس 8
یادگیری دستور while و معرفی دستورات break و continue در پایتون
19 دقیقه / رایگان


درس 9
معرفی برخی از توابع تعریف شده زبان پایتون(Built-in Functions)
29 دقیقه / رایگان


درس 10
روشهای تعریف و فراخوانی توابع و کار با عبارتهای Lambda
25 دقیقه / رایگان


درس 11
معرفی رشته ها یا داده های ترتیبی و لیستها در زبان پایتون (Sequence , List)
47 دقیقه / رایگان


درس 12
آشنایی با برخی از عملگرهای کار با لیستها و معرفی تاپل‌ها در زبان پایتون
21 دقیقه / رایگان


درس 13
معرفی مجموعه ها و دیکشنری‌ ها در زبان برنامه نویسی پایتون
29 دقیقه / رایگان


درس 14
شئ گرایی در زبان برنامه نویسی پایتون-بخش1
34 دقیقه / رایگان


درس 15
شئ گرایی در زبان برنامه نویسی پایتون-بخش2
34 دقیقه / رایگان


درس 16
وراثت در زبان برنامه نویسی پایتون
35 دقیقه / رایگان


درس 17
چندریختی در زبان برنامه نویسی پایتون
25 دقیقه / رایگان


درس 18
ماژول ها در زبان برنامه نویسی پایتون
29 دقیقه / رایگان


درس 19
آشنایی و کار با فایل ها در زبان برنامه نویسی پایتون
31 دقیقه / رایگان


دوره آموزش مقدماتی پایتون


تعداد جلسات 20 جلسه
مدت زمان 0 دقیقه
سطح مهارت مقدماتی تا پیشرفته
زبان فارسی
گواهی نامه ندارد
قیمت دوره : 0 تومان
رایگان
مهدی عباسی
مهدی عباسی

درباره مدرس :

مدیر‌ عامل‌ شرکت آریا‌ نرم‌‌ افزار دارنده مدرک کارشناسی‌ ارشد مهندسی کامپیوتر 12‌ سال سابقه تدریس دروس کامپیوتر را در دانشگاههای دولتی، آزاد، پیام‌نور ملایر، شهیدشمسی‌پور تهران و تدریس برنامه‌نویسی در انیستیتو ایزایران، مجتمع فنی و موسسه راه‌آینده تهران دارا میباشد و تا به حال راهنمایی انجمنهای علمی دانشگاه و صدها پروژه دانشجویی را برعهده داشته است. تخصص اصلی: با داشتن گواهی‌نامه‌های معتبر تدریس از انیستیتو‌ ایزایران، راه آینده‌تهران و سازمان‌فنی‌حرفه‌ای، تدریس و آموزش‌ دروس کامپیوتر، ‌برنامه‌نویسی کامپیوتر و کلاسهای کنکور کارشناسی و کارشناسی‌ارشد میباشد.همچنین تجربه داوری و نظارت مسابقات برنامه‌نویسی کشوری‌ACM را در سالهای متعدد داشته و تیم مورد رهبری ایشان در 3سال متوالی مقام اول مسابقات کشوری را از آن خود کرده است.ایشان مقالاتی در زمینه شبکه‌های کامپیوتری، تکنیک‌های وزارت دفاع و ... به ثبت رسانده و مشاور و کارشناس در طراحی و برنامه نویسی بیش از 50‌برنامه کاربردی تحت وب و ویندوز و موبایل میباشد. افتخارات دیگر:کسب مقام دوم ایده‌های برتر در مسابقات استارت‌آپ و بکند کشوری را نام برد.

آموزش مفاهیم Delegate ها در سی شارپ

آموزش مفاهیم Delegate ها در سی شارپ

احمد غیاثوند


0
رایگان
128 دقیقه
جزئیات دوره
آموزش Modular Application در اندروید

آموزش Modular Application در اندروید

احمد غیاثوند


0
رایگان
12 دقیقه
جزئیات دوره
آموزش پیغام Toast سفارشی در اندروید

آموزش پیغام Toast سفارشی در اندروید

احمد غیاثوند


0
رایگان
22 دقیقه
جزئیات دوره
تحلیل مدارهای الکتریکی پایه 2

تحلیل مدارهای الکتریکی پایه 2

علیرضا نوروزی


0
120,000 تومان
630 دقیقه
جزئیات دوره
دوره حل تمرین سی پلاس پلاس

دوره حل تمرین سی پلاس پلاس

مهدی احمدی


0
25,000 تومان
1550 دقیقه
جزئیات دوره
دوره آموزش مقدماتی  Adobe  Photoshop CC 2019

دوره آموزش مقدماتی Adobe Photoshop CC 2019

مهدی نقیبی


1
40,000 تومان
به زودی
جزئیات دوره
آموزش EventBus در اندروید

آموزش EventBus در اندروید

محمدامین چهاردولی


0
رایگان
34 دقیقه
جزئیات دوره
دوره آموزش ویندوز فرم سی شارپ-مقدماتی

دوره آموزش ویندوز فرم سی شارپ-مقدماتی

مهدی احمدی


0
رایگان
به زودی
جزئیات دوره