نوشتن اولین تابع
**داستان کوتاه: نوشتن اولین تابع**
آراد پس از اینکه موفق شد دفترچه تلفن دیجیتال و سیستم ذخیره کتابها را بسازد، به فکر توسعه پروژههای جدید افتاد. امروز تصمیم گرفت پروژهای جدید انجام دهد که در آن بتواند عملیاتهای مختلف ریاضی را به طور خودکار انجام دهد. اما در حین طراحی، یک سوال مهم برایش پیش آمد: «چطور میتوانم کدهایی که به طور مکرر نیاز دارم را دوباره استفاده کنم بدون اینکه هر بار کدها را تکرار کنم؟»
آراد به سینا پیام داد: «سینا، من میخوام پروژهای بسازم که بتونه چند عمل ریاضی مختلف رو انجام بده. چطور میتوانم کدی بنویسم که فقط یکبار نوشته بشه و بعد هر بار ازش استفاده کنم؟»
سینا که همیشه آماده کمک بود، جواب داد: «خیلی خوب پرسیدی آراد! برای این کار میتوانی از **توابع** استفاده کنی. توابع قطعاتی از کد هستند که میتوانند کار خاصی را انجام دهند و شما میتوانید هر زمان که نیاز داشتید از آنها استفاده کنید. به این ترتیب نیازی نیست که کدها رو دوباره بنویسی.»
آراد با تعجب پرسید: «توابع چطور کار میکنند؟»
سینا توضیح داد: «توابع به شما این امکان رو میدهند که یک تکه کد را در یک قسمت جداگانه بنویسید و بعد هر وقت به اون نیاز داشتید، فقط تابع رو فراخوانی کنید. برای تعریف تابع، از کلمه `def` استفاده میکنیم.»
سینا یک مثال ساده از تابع را برای آراد فرستاد:
“`python
def greet():
print(“سلام! خوش آمدید به دنیای پایتون!”)
“`
آراد کد را تایپ کرد و سپس آن را اجرا کرد، اما هیچ خروجیای مشاهده نکرد. آراد کمی گیج شد و گفت: «چرا هیچ چیزی چاپ نشد؟»
سینا که متوجه شده بود آراد فراموش کرده است تابع را فراخوانی کند، نوشت: «برای اینکه یک تابع اجرا بشه، باید اون رو فراخوانی کنی. مثل این:»
“`python
greet() # اینجا تابع greet رو فراخوانی میکنیم
“`
آراد کد را دوباره اجرا کرد و این بار پیامی روی صفحه ظاهر شد:
“`
سلام! خوش آمدید به دنیای پایتون!
“`
آراد با خوشحالی گفت: «حالا میفهمم! اینطور که هر وقت نیاز داشتم میتوانم تابع را فراخوانی کنم. عالیه! حالا اگه بخوام که تابع چیزی رو دریافت کنه و بر اساس اون محاسبهای انجام بده، چی کار باید کنم؟»
سینا پاسخ داد: «اگر بخواهی تابعی بنویسی که ورودی داشته باشد، میتوانی پارامترهایی را به تابع بدهی. به این صورت تابع میتواند با توجه به ورودیهایی که میگیرد، عملیاتی انجام دهد.»
آراد کد زیر را نوشت تا با توابع دارای پارامتر آشنا شود:
“`python
def add_numbers(a, b):
result = a + b
print(“نتیجه جمع دو عدد:”, result)
add_numbers(5, 3)
“`
آراد با کمال تعجب دید که این بار جواب درست و محاسبه شده نمایش داده شد:
“`
نتیجه جمع دو عدد: ۸
“`
آراد گفت: «واو! حالا میبینم که میتوانم به تابع دو عدد بدهم و اونها رو جمع کنم. خیلی جالب است!»
سینا گفت: «دقیقاً! حالا که اینو فهمیدی، میتوانی برای انجام عملیاتهای مختلف توابع جداگانه بنویسی.»
آراد تصمیم گرفت امتحان کند که چند تابع دیگر هم بنویسد. او کد زیر را تایپ کرد:
“`python
def subtract_numbers(a, b):
result = a – b
print(“نتیجه تفریق دو عدد:”, result)
def multiply_numbers(a, b):
result = a * b
print(“نتیجه ضرب دو عدد:”, result)
def divide_numbers(a, b):
if b != 0:
result = a / b
print(“نتیجه تقسیم دو عدد:”, result)
else:
print(“خطا: تقسیم بر صفر امکانپذیر نیست.”)
“`
آراد کد را اجرا کرد و سپس توابع مختلف را فراخوانی کرد:
“`python
subtract_numbers(10, 4)
multiply_numbers(6, 7)
divide_numbers(8, 2)
“`
خروجی به این شکل بود:
“`
نتیجه تفریق دو عدد: ۶
نتیجه ضرب دو عدد: ۴۲
نتیجه تقسیم دو عدد: ۴.۰
“`
آراد گفت: «این خیلی عالیه! حالا میتوانم از توابع مختلف برای انجام عملیاتهای ریاضی استفاده کنم. حتی میتوانم برای هر تابع ورودیها رو تغییر دهم و جوابهای متفاوتی بگیرم.»
سینا با لبخند گفت: «آفرین! استفاده از توابع نه تنها کد رو مرتب میکنه، بلکه باعث میشه که شما بتونی به راحتی کدهای خودت رو دوباره استفاده کنی و از نوشتن کدهای تکراری جلوگیری کنی.»
آراد با رضایت گفت: «ممنون سینا! حالا میفهمم که توابع چطور کار میکنند. من میتوانم از توابع برای انجام کارهای مختلف در پروژههایم استفاده کنم. این خیلی به من کمک میکنه!»