Obyekt xususiyatlarini o’chirish ham mumkin. Hozir obyektimizdagi yosh xususiyatini o’chiramiz. So’ng uni ekranga chiqarish buyrug’ini beramiz. Dastur ishga tushgach xatolik haqida xabar beriladi.
class Ishchi: def __init__(abc, ism, yosh): abc.ism = ism abc.yosh = yosh p1 = Ishchi ("Abbosbek", 20) del p1.yosh print(p1.yosh) AttributeError: 'Ishchi' object has no attribute 'yosh'
Obyektni o’chirish
Obyektni o’chirish uchun del kalit so’zini obyekt nomi bilan qo’llaymiz. Natijada obyekt butkul o’chib ketadi.
Quyidagi kodimizda ham xatolik haqida xabar beriladi. Sababi, biz o’chib ketgan obyektni ekranga chiqarmoqchi bo’lyabmiz:
class Ishchi: def __init__(abc, ism, yosh): abc.ism = ism abc.yosh = yosh p1 = Ishchi ("Abbosbek", 20) del p1 print(p1)
Sinflarda konstruktor tushunchasi
Konstruktor - bu sinfning instansiya a'zolarini initsializatsiya qilish uchun ishlatiladigan maxsus metod (funktsiya) turi.
Konstruktorlar ikki xil bo'lishi mumkin:
Ushbu sinf ob'ektini yaratganimizda konstruktor ta'rifi bajariladi. Shuningdek, konstruktorlar ob'ekt uchun biron bir ishga tushirish vazifasini bajarish uchun yetarli resurslar mavjudligini tasdiqlaydilar.
Pythonda __init__ metodi sinf konstruktorini simulyatsiya qiladi. Ushbu usul sinfni qo'zg'atganda chaqiriladi. Biz __init__ ta'rifiga qarab, sinf ob'ektini yaratishda istalgan sonli argumentlarni berishimiz mumkin. Bu asosan sinf atributlarini ishga tushirish uchun ishlatiladi. Har bir sinf konstruktorga ega bo'lishi kerak, hatto u oddiygina konstruktorga tayansa ham.
Employee sinfining atributlarini ishga tushirish uchun quyidagi misolni ko'rib chiqing.
Example: