Page 51 - 6734
P. 51
obj.a=1 # зміна значення атрибута a
obj.f() # виклик методу f
print dir(B) # список імен атрибутів класу B
print dir(obj) # список імен атрибутів об'єкта obj
print id(obj) # унікальний ідентифікатор об'єкта
print obj.__sizeof__() # розмір об'єкта в пам'яті в
байтах
print B.__doc__ # рядок документації класу B
print obj.f.__doc__ # рядок документації методу f
print B.__name__ # ім'я класу B
print __name__ # ім'я модуля
print type(obj) # тип (клас) об'єкта obj
# або obj.__class__
print obj.__class__.__name__ # ім'я типу об'єкта obj
print vars(obj) # словник із парами атрибут:значення
# або obj.__dict__
print hasattr(obj, 'a') # чи є атрибут 'a' у об'єкта
obj?
setattr(obj, 'a', 3) # зміна значення (3) атрибута
'a' об'єкта obj
# або obj.__setattr__('a',3)
print getattr(obj, 'a') # значення атрибута 'a'
об'єкта obj
# або obj.__getattribute__('a')
# або obj.__dict__['a']
print callable(obj.f) # чи атрибут f є методом?
print isinstance(obj, B) # чи obj є екземпляром B?
print issubclass(A, object) # чи A є підкласом
object?
print A.__subclasses__() # підкласи A
print B.__bases__ # кортеж базових класів
print B.__mro__ # кортеж з ієрархією базових класів
['__class__', '__delattr__', '__dict__', '__doc__',
'__format__', '__getattribute__', '__hash__',
50