Programmazione orientata agli oggetti in Python
Alex Yarosh
Content Quality Analyst @ DataCamp
class Customer:# il codice per la classe va quipass
class <name>: inizia una definizione di classe class è indentatopass per creare una classe "vuota"c1 = Customer()
c2 = Customer()
ClassName() per creare un oggetto della classe ClassNameclass Customer:
def identify(self, name):
print("Sono il Cliente " + name)
self come 1° argomento nella definizione del metodocust = Customer()
cust.identify("Laura")
Sono il Cliente Laura
self quando chiami un metodo su un oggettoclass Customer:
def identify(self, name):
print("Sono il Cliente " + name)
cust = Customer()
cust.identify("Laura")
self è un segnaposto per un oggetto specifico usato nella definizione della classeself quando il metodo è chiamato da un oggetto:cust.identify("Laura") sarà interpretato come Customer.identify(cust, "Laura")
Customer dovrebbe essere un attributo$$\text{\Large{Gli attributi sono creati tramite assegnazione (=) nei metodi}}$$
class Customer: # imposta l'attributo nome di un oggetto su new_name def set_name(self, new_name):# Crea un attributo assegnando un valore self.name = new_name # <-- creerà .name quando set_name è chiamato
cust = Customer() # <--.name non esiste ancora quicust.set_name("Lara de Silva") # <--.name è creato e impostato su "Lara de Silva"print(cust.name) # <--.name può essere usato
Lara de Silva
class Customer:
# Usando un parametro
def identify(self, name):
print("Sono il Cliente" + name)
cust = Customer()
cust.identify("Eris Odoro")
Sono il Cliente Eris Odoro
class Customer:
def set_name(self, new_name):
self.name = new_name
# Usando .name dall'oggetto stesso
def identify(self):
print("Sono il Cliente" + self.name)
cust = Customer()
cust.set_name("Rashid Volkov")
cust.identify()
Sono il Cliente Rashid Volkov
Programmazione orientata agli oggetti in Python