تعریف تابع (def)

اصلاح شده

2026-07-25

type(32)
<class 'int'>

تعریف تابع

  • کلیدواژه def
  • با تعریف تابع، یک متغیر هم‌نام با تابع ساخته می‌شه
def print_lyrics():
    print("I'm a lumberjack, and I'm okay.")
    print('I sleep all night and I work all day.')
  • فراخوانی: print_lyrics() — دقیقاً مثل توابع داخلی
  • می‌شه یک تابع رو داخل تابع دیگه هم صدا زد

پارامتر و آرگومان

  • بعضی توابع نیاز به آرگومان (Argument) دارن، مثلاً math.sin(x)

توابع Fruitful (خروجی‌دار) و Void (بدون خروجی)

نوع ویژگی مثال
Fruitful با return یک مقدار برمی‌گردونه math.sqrt(5)
Void فقط کاری انجام می‌ده، خروجی قابل نمایش نداره تابعی بدون return
def get_sum(x, y):
    return x + y

get_sum(2, 3)   # 5
def no_result_func():
    x = math.cos(radians)   # خروجی برنمی‌گردونه

متغیرهای سراسری (global)

  • به‌طور پیش‌فرض، تابع نمی‌تونه متغیر بیرونی رو تغییر بده (فقط می‌تونه بخونه)
  • برای تغییر دادن متغیر بیرون تابع از داخل تابع، باید با global اعلام بشه
n = 0
def counter():
    global n
    n += 1

counter()
print(n)   # 1

تمرین

احتیاطپروژه

به بخش پروژه ماشین حساب بروید و نگاه کنید کدام قسمت از کد را می‌توانید بفهید.