Sobes.tech
Junior — Middle

Чӣ гуна метавон оператори шахсии худро дар Python барои истифода дар синфҳо муайян кард؟

sobes.tech AI

Ҷавоб аз AI

در پایتون، امکان ایجاد عملگرهای کاملاً جدید وجود ندارد، اما می‌توانید رفتار عملگرهای موجود را برای کلاس‌های خود با استفاده از روش‌های خاص (روش‌های جادویی) مجدداً تعریف کنید.

برای مثال، برای تعریف رفتار عملگر + برای کلاس خود، باید متد __add__ را پیاده‌سازی کنید:

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)

به این صورت، شما یک عملگر جدید ایجاد نمی‌کنید، بلکه نحوه کار کردن عملگر موجود با کلاس خود را تعریف می‌کنید. فهرست کامل این روش‌ها را می‌توانید در مستندات پایتون در بخش روش‌های خاص پیدا کنید (__sub__, __mul__, __eq__ و غیره).