pythondagi operatorlar uchun maxsus metodlar

DOCX 11 pages 46.8 KB Free download

Page preview (5 pages)

Scroll down 👇
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 …

Want to read more?

Download all 11 pages for free via Telegram.

Download full file

About "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...

This file contains 11 pages in DOCX format (46.8 KB). To download "pythondagi operatorlar uchun maxsus metodlar", click the Telegram button on the left.

Tags: pythondagi operatorlar uchun ma… DOCX 11 pages Free download Telegram