1-dars. Python’ni o’rnatish



Download 1,13 Mb.
bet32/42
Sana28.06.2022
Hajmi1,13 Mb.
#713356
1   ...   28   29   30   31   32   33   34   35   ...   42
Bog'liq
Python Husniddin

class Person:


  • def __init__(self, name):


  • self.name = name


  • def sayHi(self):


  • print('Salom! Mening ismim', self.name)



  • p = Person('Swaroop')


  • p.sayHi()

    Natija:
    $ python3 class_init.py
    Salom! Mening ismim Swaroop
    Bu qanday ishlaydi:
    Bu yerda biz __init__ metodini self parametri yonida name parametrini qabul qiladigan qilib aniqladik. So’ngra name (self.name) maydonini aniqladik. Bu yerda self.name ob’yektga tegishli maydon name esa mahalliy o’zgaruvchi.
    Ahamiyat berish kerakki, klass ob’yektini xosil qilishda __init__ metodini ochiq chaqirganimiz yo’q, uning o’rniga klass nomidan so’ng argumentlarni qavs ichida berdik xolos. Shu holat bilan bu metodning roli bog’liq.
    Shundan so’ng biz self.name maydonini metodlarimizda ishlatish imkoniga ega bo’lamiz. Buni sayHi metodi ko’rsatib turibdi.


    9.2 Klass va ob’yekt o’zgaruvchilari
    Klass va ob’ektlarning fuksional qismi, ya’ni metodlarni avvalgi darsda ko’rib o’tdik. Bu darsda klass maydonlari haqida so’z yuritamiz. Klass yoki ob’ekt maydonlarining oddiy o’zgaruvchilardan farqi ular shu klass yoki ob’ekt sohasiga tegishli bo’ladi. Ya’ni maydon nomlari shu klass yoki ob’ekt ichida mavjud bo’ladi. Moydon – o’zgaruvchilarning ikki turi mavjud: Klass o’zgaruvchlari va ob’yekt o’zgaruvchilari.
    Ularning asosiy farqlari quyidagicha:
    Klass o’zgaruvchilariga shu klassning barcha ob’yektlari tomonidan murojaat qilish imkoniyati mavjud. Klass o’zgaruvchisi hamma ob’yektlar uchun bitta bo’ladi. Shuning uchun biror ob’yekt klass o’zgaruvchisini o’zgartirsa bu o’zgarish shu klassning qolgan ob’yektlarida ham ko’rinadi.
    Ob’yekt o’zgaruvchilari esa, klassning har bir ob’yektining o’zigagina tegishli bo’ladi.
    Bir ob’yekt o’zgaruvchisining o’zgartirilishi boshqa ob’yektlarga ta’sirqilmaydi.
    Misol: (objvar.py nomi bilan saqlang)

    Source code



    1. class Robot:


    2. '''Nomlangan robotlarni ifoda etadi'''


    3. # Klass o'zgaruvchisi robotlar sonini ifoda etadi

    4. population = 0


    5. def __init__(self, name):

    6. '''Ma'lumotlar inisializatsiyasi.'''

    7. self.name = name


    8. print('(Inisializatsiya {0})'.format(self.name))


    9. # Yangi robot xosil qilinayotganda 'population' o'zgaruvchisiga qo'shiladi

    10. Robot.population += 1



    11. def __del__(self):

    12. '''Robot yo'q qilinyapti.'''


    13. Download 1,13 Mb.

      Do'stlaringiz bilan baham:
  • 1   ...   28   29   30   31   32   33   34   35   ...   42




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

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish