Middle
Ի՞նչ կախարդական մեթոդներ կան Python-ում։
sobes.tech AI
Պատասխան AI-ից
Մոգական մեթոդները Python-ում հատուկ մեթոդներ են, որոնք սկսվում և ավարտվում են կրկնակի ստորակետով (օրինակ, __init__, __str__): Նրանք թույլ են տալիս վերաշարադրել ինտեգրված օպերացիաների վարքագիծը և ինտեգրվել լեզվի սինտաքսի հետ:
Մոգական մեթոդների հիմնական խմբեր:
- Օբյեկտների ինիցիալիզացիա և ստեղծում՝
__new__,__init__ - Օբյեկտի ներկայացում՝
__str__,__repr__ - Արյիթմետիկ գործողություններ՝
__add__,__sub__,__mul__,__truediv__և այլ. - Համեմատական գործողություններ՝
__eq__,__lt__,__gt__,__le__,__ge__,__ne__ - Ատրիբուտների մուտքի կառավարում՝
__getattr__,__setattr__,__delattr__ - Իտերատորներ և գեներատորներ՝
__iter__,__next__ - Կոնտեքստային մենեջերներ՝
__enter__,__exit__ - Ինդեքսավորում և կտորներ՝
__getitem__,__setitem__,__delitem__ - Օբյեկտի կանչում որպես ֆունկցիա՝
__call__
Օրինակ՝ ариֆմետիկ օպերատորի և տողային ներկայացման վերաշարադրում:
class Vector:
def __init__(self, x, y):
self.x = x
self.y = y
def __add__(self, other):
return Vector(self.x + other.x, self.y + other.y)
def __repr__(self):
return f"Vector({self.x}, {self.y})"
v1 = Vector(1, 2)
v2 = Vector(3, 4)
print(v1 + v2) # Vector(4, 6)
Մոգական մեթոդները լայնորեն օգտագործվում են նախագծման նմուշների իրականացման և դասարանների հնարավորությունների ընդլայնման համար։