Sinfda aniqlangan ichki funktsiyalar quyidagi jadvalda tavsiflangan.
SN
Funksiya
Vazifasi
1
getattr (obj, name, default)
Ob'ektning atributiga kirish uchun ishlatiladi.
2
setattr (obj, name, value)
U ob’ektning o’ziga xos atributiga ma’lum bir qiymatni belgilash uchun ishlatiladi.
3
delattr (obj, name)
U ma’lum bir atributni o’chirish uchun ishlatiladi.
4
hasattr (obj, name)
Ob’ektda o’ziga xos atribut bo’lsa, u haqiqiy qiymatni qaytaradi.
Misol:
class Student: def __init__(self,name,id,age): self.name = name; self.id = id; self.age = age #creates the object of the class Student s = Student("John",101,22) #prints the attribute name of the object s print(getattr(s,'name')) # reset the value of attribute age to 23 setattr(s,"age",23) # prints the modified value of age print(getattr(s,'age')) # prints true if the student contains the attribute with name id print(hasattr(s,'id')) # deletes the attribute age delattr(s,'age') # this will give an error since the attribute age has been deleted print(s.age)
John 23 True AttributeError: 'Student' object has no attribute 'age'
O'rnatilgan sinf atributlari
Boshqa atributlar bilan bir qatorda, python klassida sinf haqida ma'lumot beradigan ba'zi bir o'rnatilgan sinf atributlari mavjud.
O'rnatilgan sinf atributlari quyidagi jadvalda keltirilgan:
__dict__ - Bu sinf nomlari maydoni haqidagi ma'lumotlarni o'z ichiga olgan lug'atni taqdim etadi.
__doc__ - U sinf hujjatiga ega bo'lgan qatorni o'z ichiga oladi __name__ - U sinf nomiga kirish uchun ishlatiladi.
__module__ - Ushbu sinf aniqlangan modulga kirish uchun foydalaniladi.
__bases__ - Unda barcha asosiy sinflarni o'z ichiga olgan korniş mavjud.
Misol:
class Student: def __init__(self,name,id,age): self.name = name; self.id = id; self.age = age def display_details(self): print("Name:%s, ID:%d, age:%d"%(self.name,self.id)) s = Student("John",101,22) print(s.__doc__) print(s.__dict__) print(s.__module__)