Menu
Coddy logo textTech

Atrybuty

Część sekcji Programowanie obiektowe ścieżki Python w Coddy. Lekcja 6 z 64.

Atrybuty to dane lub zmienne należące do klasy lub jej obiektów. Przechowują informacje o stanie obiektu.

Istnieją dwa rodzaje atrybutów: 

Atrybuty klasy – wspólne dla wszystkich obiektów klasy:

class Student:
    school_name = "Python Academy"  # atrybut klasy

Atrybuty instancji – unikalne dla każdego obiektu:

class Student:
    school_name = "Python Academy"
    
    def set_info(self, name, age):
        self.name = name    # atrybut instancji
        self.age = age      # atrybut instancji

Utwórz obiekty uczniów i ustaw ich indywidualne dane:

student1 = Student()
student2 = Student()

student1.set_info("Alice", 20)
student2.set_info("Bob", 22)

Dostęp do atrybutów instancji (unikalnych dla każdego obiektu):

print(student1.name)    # Alice
print(student2.name)    # Bob
print(student1.age)     # 20

Dostęp do atrybutów klasy (takich samych dla wszystkich obiektów):

print(student1.school_name)    # Python Academy
print(student2.school_name)    # Python Academy
print(Student.school_name)     # Python Academy

Wynik:

Alice
Bob
20
Python Academy
Python Academy
Python Academy

Kluczowa różnica: atrybuty klasy są współdzielone przez wszystkie obiekty, a atrybuty instancji są unikalne dla każdego obiektu. Używaj self.attribute_name w przypadku atrybutów instancji, a w przypadku atrybutów klasy po prostu attribute_name.

Spróbuj swoich sił

Ta lekcja nie zawiera wyzwania z kodem.

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator Python online