Yuqoridagi misolimizda barcha metodlar faqatgina self parametrini qabul qilishayapti. Aslida, barcha funksiyalar kabi, klass ichidagi obyektlarni ham boshqa argumentlar qabul qiladigan qilib yozish mumkin.
class Talaba:
"""Talaba nomli klass yaratamiz"""
def __init__(self,ism,familiya,tyil):
"""Talabaning xususiyatlari"""
self.ism = ism
self.familiya = familiya
self.tyil = tyil
def get_name(self):
"""Talabaning ismini qaytaradi"""
return self.ism
def get_lastname(self):
"""Talabaning familiyasini qaytaradi"""
return self.familiya
def get_fullname(self):
"""Talabaning ism-familiyasini qaytaradi"""
return f"{self.ism} {self.familiya}"
def get_age(self,yil):
"""Talabaning yoshini qaytaradi"""
return yil-self.tyil
def tanishtir(self):
print(f"Ismim {self.ism} {self.familiya}. {self.tyil} yilda tu'gilganman")
Yuqorida klassimizga yangi get_age(self,yil) metodini qo'shdik. Bu metod obyektning o'zidan tashqari, qo'shimcha, yil argumentini ham qabul qiladi va talabaning yoshini qaytaradi.
talaba1 = Talaba("Alijon","Valiyev",2000)
print(talaba1.get_age(2021))
Natija: 21
Do'stlaringiz bilan baham: |