تابع _init_ در زبان پایتون
متد __init__
در این پست قصد داریم مفهوم اصلی __init__ را توضیح دهیم. در زبان های برنامه نویسی که از شی گرایی پشتیبانی میکنند یک متد وجود دارد که به آن سازنده می گویند وظیفه این متد مقداردهی اولیه شی است. اما در زبان پایتون متد __init__ اینکار رو برای ما انجام می دهد.
ساختار متد __init_
def __init__(self, [arguments])
از کلمه کلیدی def برای ساخت این متد استفاده میشود. اولین آیتم که self است به خود آبجکت اشاره میکند. علاوه بر self میتوانید آرگومانهای دیگری نیز به متد __init__ ارسال کنید. این آرگومانها اختیاری هستند و میتوانید به هر تعدادی آرگومان داشته باشید.
__init__ با ارث
وراثت توانایی یک کلاس برای به ارث بردن خواص از کلاس دیگر است. در مثال زیر استفاده __init__ در وراثت را مشاهده می کنیم.
# Python program to
# demonstrate init with
# inheritance
class A(object):
def __init__(self, something):
print("A init called")
self.something = something
class B(A):
def __init__(self, something):
# Calling init of parent class
A.__init__(self, something)
print("B init called")
self.something = something
obj = B("Something")
خروجی :
A init called
B init called
فراخوانی متد __init__ برای یک کلاس والد یا فرزند را می توان تغییر داد.
__init__ یکی از متدهای رزرو شده در پایتون است. در برنامه نویسی شی گرا، به عنوان سازنده شناخته می شود. متد __init__ را می توان زمانی فراخوانی کرد که یک شی از کلاس ایجاد شود و برای مقداردهی اولیه ویژگی های کلاس به دسترسی نیاز است.
نکته: متد __init__ نمی تواند چیزی را return (برگشت دهد) کند .
نکته: نمیتوان از چند متد __init__ در یک کلاس پایتون استفاده کرد.
نکته: داشتن متد سازنده کاملا اختیاری است.
امیدوارم مطالب این بخش را برایتان مفید بوده باشد جهت دسترسی به محتوای جامع آموزش پایتون به ادامه مطلب مراجعه کنید.