pythondagi operatorlar uchun maxsus metodlar

DOCX 11 стр. 46,8 КБ Бесплатная загрузка

Предварительный просмотр (5 стр.)

Прокрутите вниз 👇
1 / 11
pythondagi operatorlar uchun maxsus metodlar 1. left-hand metodlar (masalan, __add__) · ushbu metodlar operator chap tomonidagi obyektga tegishli bo'lib, asosiy operatsiyani bajaradi. · masalan, a + b operatsiyasida, a.__add__(b) chaqiriladi. misol. a=52 b=596 c= a.__add__(b) print(c) 2. right-hand metodlar (masalan, __radd__) · ushbu metodlar operator o'ng tomonidagi obyektga tegishli bo'lib, agar chap tomon obyekt mos metodni qo'llab-quvvatlamasa ishlatiladi. · masalan, agar a + b bajarilganda a obyektining __add__ metodi yo'q bo'lsa, b.__radd__(a) chaqiriladi. 3. in-line metodlar (masalan, __iadd__) · bu metodlar joyida operatsiyalarni bajaradi, ya'ni obyektning o'z qiymatini o'zgartiradi. · masalan, a += b operatsiyasi a.__iadd__(b) metodi orqali bajariladi. quyida jadvalda ko'rsatilgan asosiy operatorlar va ularning mos metodlarini tushuntirib o'taman: qo'shish (+) · __add__(self, other): chapdagi obyektga o'ngdagi qiymatni qo'shadi. · __radd__(self, other): agar chap obyekt qo'llab-quvvatlamasa, o'ngdagi obyekt tomonidan qo'shishni bajaradi. · __iadd__(self, other): += operatori uchun ishlatiladi. ayirish (-) · __sub__(self, other): chap obyekt o'ngdagi qiymatni chiqaradi. · …
2 / 11
(self, other): teskari qoldiq olish operatsiyasi. · __imod__(self, other): %= operatori uchun ishlatiladi. exponentiation (daraja, **) · __pow__(self, other): darajaga ko'tarish. · __rpow__(self, other): teskari daraja. · __ipow__(self, other): **= operatori uchun ishlatiladi. bitwise left shift ( >) · __rshift__(self, other): chap obyektni o'ngga siljitadi. · __rrshift__(self, other): teskari holatda o'ng obyekt tomonidan chaqiriladi. · __irshift__(self, other): >>= operatori uchun ishlatiladi, obyektni joyida o'ngga siljitadi. bitwise and (&) · __and__(self, other): chap obyekt bilan o'ng obyektni bit bo'yicha and operatsiyasi bajaradi. · __rand__(self, other): teskari holatda o'ng obyekt tomonidan chaqiriladi. · __iand__(self, other): &= operatori uchun ishlatiladi, obyektni joyida and operatsiyasini bajaradi. bitwise or (|) · __or__(self, other): chap obyekt bilan o'ng obyektni bit bo'yicha or operatsiyasi bajaradi. · __ror__(self, other): teskari holatda o'ng obyekt tomonidan chaqiriladi. · __ior__(self, other): |= operatori uchun ishlatiladi, obyektni joyida or operatsiyasini bajaradi. bitwise xor (^) · __xor__(self, other): chap obyekt bilan o'ng obyektni …
3 / 11
+5 # a = 5 · maxsus metod: __pos__(self) · bu metod obyektni musbat qiymatda qaytaradi. · foydalanish: · class mynumber: · def __init__(self, value): · self.value = value · · def __pos__(self): · return mynumber(+self.value) · · num = mynumber(-3) · print((+num).value) # -3 2. manfiy (-) · ma'nosi: son yoki qiymatning qarama-qarshi qiymatini ifodalaydi (musbatdan manfiyga yoki aksincha). · misol: · a = -5 # a = -5 · maxsus metod: __neg__(self) · bu metod obyekt qiymatining manfiy versiyasini qaytaradi. · foydalanish: · class mynumber: · def __init__(self, value): · self.value = value · · def __neg__(self): · return mynumber(-self.value) · · num = mynumber(7) · print((-num).value) # -7 3. mantiqiy not (~) · ma'nosi: sonni bitwise teskari holatga o'tkazadi (invert qiladi). · misol: · a = ~5 # bu 5 ning bitwise inversiyasi bo'ladi, ya'ni -6 · maxsus metod: __invert__(self) · bu metod obyektning bitwise teskari versiyasini …
4 / 11
. quyida misol keltirilgan: class mynumber: def __init__(self, value): self.value = value def __abs__(self): return abs(self.value) # standart absolyut qiymatni qaytarish # mynumber obyektini yaratamiz num = mynumber(-10) # abs() funksiyasini chaqiramiz print(abs(num)) # natija: 10 ko'p ishlatiladigan joylar 1. oddiy sonlar: abs() musbat qiymatni qaytaradi. 2. print(abs(-7)) # 7 3. print(abs(3)) # 3 4. foydalanuvchi aniqlagan sinflar: abs() obyekt uchun maxsus hisobni amalga oshirishi mumkin. 5. class vector: 6. def __init__(self, x, y): 7. self.x = x 8. self.y = y 9. def __abs__(self): 10. # vektorning uzunligini qaytaradi 11. return (self.x**2 + self.y**2)**0.5 12. v = vector(3, 4) 13. print(abs(v)) # 5.0 (pifagor teoremasi) xulosa · __abs__() obyektning absolyut qiymatini aniqlash uchun maxsus metod. · bu metod foydalanuvchi aniqlagan sinflarga abs() funksiyasi bilan ishlash imkonini beradi. · standart maqsad: sonlar, vektorlar va boshqa matematik obyektlar ustida ishlashda foydali. solishtirish operatorlari bu metodlar python'dagi solishtirish operatorlari uchun ishlatiladi. ular …
5 / 11
): · self.value = value · · def __gt__(self, other): · return self.value > other.value · · a = mynumber(10) · b = mynumber(5) · print(a > b) # true 5. __le__() - kichik yoki teng operatori ( =) · izoh: bu metod >= operatori ishlatilganda chaqiriladi. · masalan: · class mynumber: · def __init__(self, value): · self.value = value · def __ge__(self, other): · return self.value >= other.value · · a = mynumber(10) · b = mynumber(5) · print(a >= b) # true foydalanish joylari bu metodlar foydalanuvchi aniqlagan obyektlar ustida solishtirishni amalga oshirish uchun juda qulay. misol uchun: · matematik hisoblashlar. · obyektlarni saralash (sort() yoki sorted()). · maxsus solishtirish mantiqini qo'llash. xulosa operator metod vazifasi == __eq__() tenglikni tekshiradi != __ne__() teng emaslikni tekshiradi __gt__() katta ekanligini tekshiradi = __ge__() katta yoki teng ekanligini tekshiradi bu metodlar orqali obyektlarning qanday solishtirilishini to'liq nazorat qilish mumkin. iteratsiya operatorlari …

Хотите читать дальше?

Скачайте все 11 страниц бесплатно через Telegram.

Скачать полный файл

О "pythondagi operatorlar uchun maxsus metodlar"

pythondagi operatorlar uchun maxsus metodlar 1. left-hand metodlar (masalan, __add__) · ushbu metodlar operator chap tomonidagi obyektga tegishli bo'lib, asosiy operatsiyani bajaradi. · masalan, a + b operatsiyasida, a.__add__(b) chaqiriladi. misol. a=52 b=596 c= a.__add__(b) print(c) 2. right-hand metodlar (masalan, __radd__) · ushbu metodlar operator o'ng tomonidagi obyektga tegishli bo'lib, agar chap tomon obyekt mos metodni qo'llab-quvvatlamasa ishlatiladi. · masalan, agar a + b bajarilganda a obyektining __add__ metodi yo'q bo'lsa, b.__radd__(a) chaqiriladi. 3. in-line metodlar (masalan, __iadd__) · bu metodlar joyida operatsiyalarni bajaradi, ya'ni obyektning o'z qiymatini o'zgartiradi. · masalan, a += b operatsiyasi a.__iadd__(b) metodi orqali bajariladi. quyida jadvalda ko'rsatilga...

Этот файл содержит 11 стр. в формате DOCX (46,8 КБ). Чтобы скачать "pythondagi operatorlar uchun maxsus metodlar", нажмите кнопку Telegram слева.

Теги: pythondagi operatorlar uchun ma… DOCX 11 стр. Бесплатная загрузка Telegram