#1 Ob’ekt tushunchasi yoritib bering va misollar keltiring


Download 196.81 Kb.
bet7/11
Sana31.01.2023
Hajmi196.81 Kb.
#1144964
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
django

11
Pythonda obyektlar bilan ishlashni yanada qulay qilish uchun bir nechta maxsus metodlar bor. Bu metodlarning nomi ikki pastki chiziq bilan yozilgani uchun, double underscore yoki qisqa qilib dunder metodlar deb ataladi. Dunder metolar yordamida obyektlarga qo'shimcha qulayliklar va vazifalar qo'shishimiz mumkin. Klass yoki obyektga oid dunder metodlar ro'yxatini ko'rish uchun dir() funksiyasidan foydalanamiz:
>>> dir(Avto)
['_Avto__num_avto',
'__class__',
'__delattr__',
'__dict__',
'__dir__',
'__doc__',
'__eq__',
'__format__',
'__ge__',
'__getattribute__',
'__gt__',
'__hash__',
'__init__',
'__init_subclass__',
'__le__',
'__lt__',
'__module__',
'__ne__',
'__new__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__setattr__',
'__sizeof__',
'__str__',
'__subclasshook__',
'__weakref__',
'make',
'model',
'narh',
'rang',
'yil']
Dunder metodlardan __init__ metodi klassdan obyekt yaratishda chaqiriladi va obyektning xususiyatlarini belgilaydi.
Obyektga print() yoki str() orqali murojat qilinganda obyekt haqida tushunarli ma'lumot qaytarish uchun __repr__va __str__ metodlaridan foydalanamiz.
class Avto:
__num_avto = 0
"""Avtomobil klassi"""
def __init__(self,make,model,rang,yil,narh):
"""Avtomobilning xususiyatlari"""
self.make = make
self.model = model
self.rang = rang davomi bor 
self.yil = yil
self.narh = narh
Avto.__num_avto += 1
Yuqoridagi klassdan yangi obyekt yaratamiz va obyekt haqida ma'lumot olish uchun print() funksiyasini chaqiramiz:
avto1 = Avto("GM","Malibu","Qora",2020,40000)
print(avto1) # obyekt haqida ma'lumot
Natija: <__main__.Avto object at 0x00000238A6DAE0C8>


#13
Vorislik tushunchasini misollar yordamida tushuntirib bering
• Vorislik - bu atama sinflarga xosdir. Vorislik deb bir sinfdagi barcha funksiya va xususiyatlarni boshqa bir sinf o’ziga o’zlashtirishiga aytiladi. Funksiyalari meros qilib olinadigan sinf parent class deyiladi. Meros qilib olingan funksiyalarni o’ziga o’zlashtiradigan sinf voris sinf deyiladi. Parent class hosil qilish Istalgan sinf parent class bo’lishi mumkin. Shu sababli parent classni hosil qilish xuddi oddiy sinfni hosil qilish kabidir
Parent class
• class Odam:
• def __init__(self, ism, familiya):
• self.ism = ism
• self.familiya = familiya
• def tanish(self):
• print(self.ism, self.familiya)
• x = Odam ("Abbosbek", "Ibragimov")
• x.tanish()
Abbosbek Ibragimov
Child class
• class Talaba (Odam):
pass
• x = Talaba ("Asadbek", "Suvonov")
• x.tanish()
Asadbek Suvonov


Download 196.81 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling