Objektorientierte Programmierung in Python
Alex Yarosh
Content Quality Analyst @ DataCamp
class Customer:# Code für die Klasse kommt hierpass
class <name>: startet eine Klassendefinition class ist eingerücktpass, um eine "leere" Klasse zu erstellenc1 = Customer()
c2 = Customer()
ClassName(), um ein Objekt der Klasse ClassName zu erstellenclass Customer:
def identify(self, name):
print("Ich bin Kunde " + name)
self als 1. Argument in der Methodendefinitioncust = Customer()
cust.identify("Laura")
Ich bin Kunde Laura
self, wenn Methode auf ein Objekt aufgerufen wirdclass Customer:
def identify(self, name):
print("Ich bin Kunde " + name)
cust = Customer()
cust.identify("Laura")
self steht für ein bestimmtes Objekt in der Klassendefinitionself, wenn Methode von einem Objekt aufgerufen wird:cust.identify("Laura") wird interpretiert als Customer.identify(cust, "Laura")
Customer ein Attribut sein$$\text{\Large{Attribute werden durch Zuweisung (=) in Methoden erstellt}}$$
class Customer: # setze das Namensattribut eines Objekts auf new_name def set_name(self, new_name):# Erstelle ein Attribut durch Zuweisung eines Werts self.name = new_name # <-- erstellt .name, wenn set_name aufgerufen wird
cust = Customer() # <--.name existiert hier noch nichtcust.set_name("Lara de Silva") # <--.name wird erstellt und auf "Lara de Silva" gesetztprint(cust.name) # <--.name kann verwendet werden
Lara de Silva
class Customer:
# Mit einem Parameter
def identify(self, name):
print("Ich bin Kunde" + name)
cust = Customer()
cust.identify("Eris Odoro")
Ich bin Kunde Eris Odoro
class Customer:
def set_name(self, new_name):
self.name = new_name
# Verwende .name vom Objekt selbst
def identify(self):
print("Ich bin Kunde" + self.name)
cust = Customer()
cust.set_name("Rashid Volkov")
cust.identify()
Ich bin Kunde Rashid Volkov
Objektorientierte Programmierung in Python