Page 38 - 6734
P. 38
def f(self): # атрибут-метод f
return self.a**2 # повертає квадрат a
obj=A() # створення об'єкта (екземпляра) obj класу A
obj.a=2 # зміна атрибута-даного a
print obj.f() # виклик методу f
4
Клас із конструктором
Конструктор – це спеціальний метод, який має назву __init__
і викликається під час створення об’єкта [19]. Часто
використовується для ініціалізації атрибутів-даних об’єкта. У
прикладі також показано можливість визначення методу поза
класом.
def f2(self,a,x=1): # визначення методу поза класом
self.a=a # присвоїти атрибуту-даному значення
аргументу a
print self.f(x) # виклик методу f
class A: # визначення класу A
"Клас A" # рядок документації
a=0 # атрибут-дане
def __init__(self,a): # конструктор
self.a=a # присвоїти атрибуту-даному значення
аргументу a
def f(self,x): # атрибут-метод f
return self.a**x # повертає a в степені x
f2=f2 # атрибут-метод f2, визначений поза класом
obj=A(3) # створення об'єкта obj класу A, виклик
конструктора (a=3)
obj.a=2 # зміна атрибута-даного a
print obj.f(2) # виклик методу f
print obj.__doc__ # вивести рядок документації
pow=obj.f # об'єкт-метод obj.f
print pow(3) # вивести значення pow(3)
37