Алгоритмы и структуры данных


Download 159.85 Kb.
bet3/5
Sana05.01.2023
Hajmi159.85 Kb.
#1079981
1   2   3   4   5
Bog'liq
struk,dannix, lab.1

METODLAR


Har bir obyekt uning ustida bajarish mumkin bo'lgan funksiyalar bilan keladi. Bu funksiyalar obyekt ichida yashirin bo'ladi, va biz ularga nuqta va funksiya nomi orqali murojat qilishimiz mumkin. Bunday funksiyalar shu klass (yoki obyektga) tegishli metodlar deyiladi.
Biz ba'zi metodlar bilan avvalgi darslarimizda tanishdik. Bir klassga tegishli metodlar, boshqa klassdagi obyketlar uchun mavjud bo'lmasligi tabiiy. Misol uchun matnlar uchun mavjud metodlarni, butun yoki o'nli sonlarga qo'llab bo'lmaydi.
matn = "salom"
print(matn.upper())
Natija: SALOM
son = 20
print(son.lower())
Natija: AttributeError: 'int' object has no attribute 'lower'
Keling endi o'zimizning klasslarimizni yaratishni ko'ramiz.

KLASS YARATISH


Yangi klass yaratish uchun class operatoridan foydalanamiz va klassimizga tushunarli nom beramiz. Esingizda bo'lsin, klass bu hali obyekt emas, bu obyekt uchun shablon. Shuning uchun klass yaratishda shu klassdagi obyektlar uchun umumiy bo'lgan xususiyatlar va funksiyalarni o'ylashimiz kerak.
Keling, Talaba degan klass yaratamiz:
class Talaba:
"""Talaba nomli klass yaratamiz"""
def __init__(self,ism,familiya,tyil):
"""Talabaning xususiyatlari"""
self.ism = ism
self.familiya = familiya
self.tyil = tyil
Kodimizni tahlil qilamiz:

  • class Talaba — Talaba nomli klass yaratdik. Klasslarga nom berishda uning birinchi harfini katta harfdan boshlash tavsiya qilinadi. Agar klass nomi 2 va undan ko'p so'zdan iborat bo'lsa har bir so'zni katta harf bilan boshlang.

  • def __init__(self) — klassga tegishli xususiyatlarni saqlovchi maxsus metod (funksiya). self kalit so'zi ingliz tilidan "o'zi" deb tarjima qilinadi, va bu klassdan yaratilgan obyektning o'ziga ishora qiladi. Ya'ni keyinchalik biz obyekt ichidagi metodga murojat qilganimizda shu obyektning o'zi birinchi bo'lib funksiyaga argument sifatida uzatiladi, obyket ustida turli amallar bajarish imkonin beradi

  • def __init__(self,ism,familiya,tyil) — yaratayotgan klassimizga xos xususiyatlarni def __init__(self) funksiyasiga argument sifatida uzatamiz. Bizning Talaba klassimiz ism, familiya va tug'ilgan yilga ega bo'ladi.

  • Keyingi qatorlarda esa self.xususiyat = argument komandasi yordamida uzatilgan argumentlarni klassning xususiyatlari bilan bo'glayapmiz. Bu yerda xususiyat nomi uzatilgan argument nomi bilan mos tushishi shart emas, unga istalgan nom berishimiz mumkin (masalan self.name = ism)

Download 159.85 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




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