Menu
Coddy logo textTech

Attributi

Fa parte della sezione Programmazione orientata agli oggetti del percorso Python di Coddy. Lezione 6 di 64.

Gli attributi sono dati o variabili che appartengono a una classe o ai suoi oggetti. Memorizzano informazioni sullo stato dell'oggetto.

Esistono due tipi di attributi: 

Attributi di classe - condivisi da tutti gli oggetti della classe:

class Student:
    school_name = "Python Academy"  # attributo di classe

Attributi di istanza - univoci per ogni oggetto:

class Student:
    school_name = "Python Academy"
    
    def set_info(self, name, age):
        self.name = name    # attributo di istanza
        self.age = age      # attributo di istanza

Crea oggetti studente e imposta i relativi dati individuali:

student1 = Student()
student2 = Student()

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

Accedi agli attributi di istanza (univoci per ogni oggetto):

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

Accedi agli attributi della classe (uguali per tutti gli oggetti):

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

Output:

Alice
Bob
20
Python Academy
Python Academy
Python Academy

Differenza fondamentale: gli attributi di classe sono condivisi da tutti gli oggetti, mentre gli attributi di istanza sono unici per ogni oggetto. Usa self.attribute_name per gli attributi di istanza e semplicemente attribute_name per gli attributi di classe.

Provalo tu

Questa lezione non include una sfida di codice.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore Python online