کلاسها و اشیاء Python
- صفحه قبل آرایههای Python
- صفحه بعدی وارسانی Python
کلاس/شیء Python
Python یک زبان برنامهنویسی مبتنی بر شیء است.
تقریباً همه چیز در Python شیء است و ویژگیها و روشها دارند.
کلاس (Class) مشابه تابع ساختار شیء است یا بلوکی است که برای ایجاد شیء استفاده میشود.
ایجاد کلاس
برای ایجاد کلاس، از class
کلمات کلیدی:
مثال
با استفاده از ویژگی به نام x، یک کلاس به نام MyClass ایجاد کنید:
class MyClass: x = 5
ایجاد شیء
حالا میتوانیم از کلاس به نام myClass برای ایجاد شیء استفاده کنیم:
مثال
یک شیء به نام p1 ایجاد کنید و ارزش x را چاپ کنید:
p1 = MyClass() print(p1.x)
توابع __init__()
مثال بالا سادهترین شکل کلاس و شیء است که در برنامههای واقعی بسیار کم استفاده است.
برای درک معنای کلاسها، ابتدا باید مفاهیم داخلیشان را بشناسیم __init__()
توابع
همه کلاسها یک توابع به نام __init__() دارند که همیشه در هنگام شروع کلاس اجرا میشود.
ارزشگذاری به متغیرهای ویژگی کلاس با استفاده از توابع __init__() یا انجام عملیات دیگری که در هنگام ایجاد شیء نیاز است:
مثال
یک کلاس به نام Person ایجاد کنید و با استفاده از توابع __init__() به name و age ارزشگذاری کنید:
class Person: def __init__(self, name, age): self.name = name self.age = age p1 = Person("Bill", 63) print(p1.name) print(p1.age)
نکته:هر بار که یک شیء جدید با استفاده از کلاس ایجاد میشود،به طور خودکار فراخوانی میشود توابع __init__()
روش شیء
شیء نیز میتواند روشها داشته باشد. روشهای موجود در شیء، روشهایی هستند که به آن شیء تعلق دارند.
اجازه دهید که در کلاس Person روشی ایجاد کنیم:
مثال
یک تابع چاپ سلام را درجا بهکار ببرید و آن را بر روی شیء p1 اجرا کنید:
class Person: def __init__(self, name, age): self.name = name self.age = age def myfunc(self): print("Hello my name is " + self.name) p1 = Person("Bill", 63) p1.myfunc()
توجه:self متغیر به نمونه فعلی کلاس است، برای دسترسی به متغیرهایی که به آن کلاس تعلق دارد استفاده میشود.
پارامتر self
self
پارامتر به یک اشارهگر به نمونه فعلی از کلاس است و برای دسترسی به متغیرهای متعلق به کلاس استفاده میشود.
نامگذاری آن الزامی نیست self
، میتوانید آن را به هر نامی نامگذاری کنید، اما باید آن را به عنوان هر کدام از توابع کلاساولین پارامتر:
مثال
از کلمات mysillyobject و abc به جای self استفاده کنید:
class Person: def __init__(mysillyobject, name, age): mysillyobject.name = name mysillyobject.age = age def myfunc(abc): print("Hello my name is " + abc.name) p1 = Person("Bill", 63) p1.myfunc()
تغییر ویژگی اشیاء
میتوانید به این صورت ویژگی اشیاء را تغییر دهید:
مثال
سن p1 را به 40 تنظیم کنید:
p1.age = 40
حذف ویژگی اشیاء
میتوانید از del
کلید حذف ویژگی اشیاء:
مثال
حذف کردن ویژگی age از اشیاء p1:
del p1.age
عبارت pass
تعریف کلاس نمیتواند خالی باشد، اما اگر به هر دلیلی تعریف کلاس خالی را نوشتهاید، از عبارت pass برای جلوگیری از خطا استفاده کنید.
مثال
class Person: گذر
- صفحه قبل آرایههای Python
- صفحه بعدی وارسانی Python