Python – کلاسها (Classes)
کلاسها و اشیاء در پایتون
ایجاد یک کلاس
برای ایجاد یک کلاس از کلمه کلیدی class
استفاده میکنید:
مثال:
ایجاد یک کلاس به نام MyClass
با یک ویژگی x
:
class MyClass:
x = 5
ایجاد شیء
اکنون میتوان از کلاس MyClass
برای ایجاد اشیاء استفاده کرد.
مثال:
ایجاد یک شیء به نام p1
و چاپ مقدار x
:
p1 = MyClass()
print(p1.x) # Output: 5
تابع __init__()
همه کلاسها یک تابع خاص به نام __init__()
دارند که بهطور خودکار هنگام ایجاد یک شیء اجرا میشود. از این تابع برای مقداردهی به ویژگیها استفاده میشود.
مثال:
ایجاد کلاس Person
که نام و سن را مقداردهی میکند:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("John", 36)
print(p1.name) # Output: John
print(p1.age) # Output: 36
تابع __str__()
تابع __str__()
کنترل میکند که چه چیزی هنگام تبدیل یک شیء به رشته نمایش داده شود. اگر این تابع تعریف نشود، رشته پیشفرض نمایش داده میشود.
مثال:
نمایش شیء بدون تابع __str__()
:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("John", 36)
print(p1) # Output: <__main__.Person object at 0x...>
نمایش شیء با تابع __str__()
:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name}({self.age})"
p1 = Person("John", 36)
print(p1) # Output: John(36)
متدهای شیء
اشیاء همچنین میتوانند شامل متد باشند که توابعی هستند که به شیء تعلق دارند.
مثال:
افزودن یک متد برای چاپ پیامی:
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("John", 36)
p1.myfunc() # Output: Hello my name is John
پارامتر self
پارامتر self
به نمونه فعلی کلاس اشاره دارد و برای دسترسی به متغیرهای متعلق به کلاس استفاده میشود. میتوانید آن را به هر نام دیگری تغییر دهید، اما باید اولین پارامتر هر متد کلاس باشد.
مثال:
استفاده از کلمات دیگری بهجای 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("John", 36)
p1.myfunc() # Output: Hello my name is John
تغییر ویژگیهای شیء
میتوانید ویژگیهای یک شیء را تغییر دهید.
مثال:
تغییر سن شیء p1
به 40:
p1.age = 40
حذف ویژگیهای شیء
میتوانید با استفاده از کلمه کلیدی del
یک ویژگی از شیء حذف کنید.
مثال:
حذف ویژگی age
از شیء p1
:
del p1.age
حذف شیء
میتوانید یک شیء را با استفاده از کلمه کلیدی del
حذف کنید.
مثال:
حذف شیء p1
:
del p1
دستور pass
اگر به هر دلیلی یک کلاس بدون محتوای خاص تعریف کردید، از دستور pass
استفاده کنید تا از خطا جلوگیری شود.
مثال:
class Person:
pass
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام