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

پایتون آریا پروژه

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

شما می توانید هر نامی را که بخواهید برای تابعی که ساخته ای به کار ببرید، به جز اسامی کلیدی زبان پایتون. لیست پارامتر ها(list of parameters )  مشخص می کند که برای استفاده از تابع جدید چه اطلاعاتی را( در صورت وجود) باید به تابع بدهیم. می توانیم هر تعداد دستوری را درون تابع به کار ببریم. اما این دستورات باید از حاشیه سمت چپ کنگره گذاری شوند.

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

پایتون آریا پروژه

این تابهnewlineنام دارد. پرانتز های خالی مشخص می کند که این تابه پارامتر ای ندارد و تنها یک دستور دارد که خروجی آن، کاراکتر خط جدید است.( این اتفاق، یک چاپ کاراکتر خط جدید،هنگامی رخ می دهد که شما از یک دستور print بدون هیچ آرگومانی استفاده کنید).

نحوه  فراخوانی تابع جدید, درست مانند نحوه فراخوانی تابع به پیش ساخته پایتون است :

پایتون آریا پروژه

 خروجی این برنامه به این صورت است:

پایتون آریا پروژه

به سطر خالی میان این دو خط دقت کنید. اگر سطر های خالی بیشتری نیاز داشتیم چطور؟ می‌توانیم همین تابع را چندین مرتبه فراخوانی کنیم:

پایتون آریا پروژه

یا اینکه تابع جدید به نامthreelines بنویسیم که سه خط  جدید چاپ کند:

پایتون آریا پروژه

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

۱: شما می توانید یک روال را مکرراً فراخوانی کنید. در واقع انجام این کار بسیار رایج و مفید است.

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

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

. ساختن یک تابع جدید به شما  این امکان را می دهد که گروهی از دستورات را نامگذاری کنید. تابع می‌تواند با پنهان کردن یک سری محاسبات پیچیده در پشت یک دستور ساده، آن هم با کلمات انگلیسی(به جای یک کد محرمانه) برنامه را ساده تر نمایند.

. ساختن یک تابع جدید، برنامه را با حذف کدهای تکراری کوتاه تر میکند. برای مثال یک راه کوتاه تر برای چاپ نرخ تجدید متوالی این است که تابعthreelines راس مرتبه فراخوانی کنید.

تمرین: تابعی با نام ninelines  بنویسید که خود تابع threelines را به منظور چاپ نه  خط جدید  ۳ مرتبه به کار ببندد. چطور می توان ۲۷ خط جدید چاپ کرد.

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

از اتصال کدهای جدا از هم بخش۳_۶ برنامه ای شبیه به آنچه در زیر می بینید نتیجه می شود:

این برنامه شامل دو تعریف تابع است:newline.threelines قسمت معرفی تابع همچون  دیگر دستورات برنامه اجرا می شود. با این تفاوت که نتیجه حاصل, ساخته شدن تابع جدید است. دستورات درون یک تابع تا زمانی که تابع فراخوانی نشود اجرا نمی‌شود و تعریف تابع هیچ خروجی تولید نمی کند.

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

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

نویسنده : زهرا رستمی

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

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