Definiowanie atrybutów i metod klas
Dowolna zmienna powiązana z klasą jest atrybutem klasy.
Dowolna funkcja zdefiniowana wewnątrz klasy jest metodą. Pierwszym argumentem każdej metody jest instancja klasy, zwyczajowo nazywana self. Na przykład, aby zdefiniować kilka atrybutów i metod klasy, można wprowadzić następujący kod:
class MyClass
attr1 = 10 #atrybuty klasy
attr2 = "hello"
def method1(self):
print MyClass.attr1 #odwołanie do atrybutu klasy
def method2(self):
print MyClass.attr2 #odwołanie do atrybutu klasy
def method3(self, text):
self.text = text #atrybut instancji
print text, self.text #wydrukuj argument i atrybut
method4 = method3 #utwórz alias dla method3
Wewnątrz klasy wszystkie odwołania do jej atrybutów muszą być kwalifikowane nazwą klasy, na przykład MyClass.attr1.
Wszystkie odwołania do atrybutów instancji powinny być kwalifikowane zmienną self, na przykład self.text. Na zewnątrz klasy wszystkie odwołania do atrybutów klasy powinny być kwalifikowane nazwą klasy (na przykład MyClass.attr1) lub instancją klasy (na przykład x.attr1, gdzie x jest instancją klasy). Na zewnątrz klasy wszystkie odwołania do zmiennych instancji powinny być kwalifikowane instancją klasy, na przykład x.text.