logo

Klassen und Objekte in Python

Python ist eine objektorientierte Programmiersprache, die Klassen bietet, die ein leistungsstarkes Werkzeug zum Schreiben von wiederverwendbarem Code darstellen. Um Objekte mit gemeinsamen Eigenschaften und Verhaltensweisen zu beschreiben, werden Klassen verwendet. In diesem Artikel werden wir Pythons Vorstellungen von Klassen und Objekten untersuchen.

Klassen in Python:

In Python ist eine Klasse ein benutzerdefinierter Datentyp, der sowohl die Daten selbst als auch die Methoden enthält, die zu ihrer Bearbeitung verwendet werden können. Klassen dienen gewissermaßen als Vorlage zum Erstellen von Objekten. Sie stellen die Eigenschaften und Operationen bereit, die die Objekte verwenden werden.

Angenommen, eine Klasse ist ein Prototyp eines Gebäudes. Ein Gebäude enthält alle Details zu Stockwerk, Räumen, Türen, Fenstern usw. Auf der Grundlage dieser Details können wir so viele Gebäude erstellen, wie wir möchten. Daher kann das Gebäude als Klasse betrachtet werden und wir können beliebig viele Objekte dieser Klasse erstellen.

String-Formatierer

Klassen in Python erstellen

In Python kann eine Klasse erstellt werden, indem das Schlüsselwort class gefolgt vom Klassennamen verwendet wird. Die Syntax zum Erstellen einer Klasse ist unten angegeben.

Syntax

 class ClassName: #statement_suite 

In Python müssen wir beachten, dass jede Klasse mit einer Dokumentationszeichenfolge verknüpft ist, auf die mit zugegriffen werden kann .__doc__. Eine Klasse enthält eine Anweisungssuite einschließlich Feld-, Konstruktor-, Funktionsdefinition usw.

Beispiel:

Code:

 class Person: def __init__(self, name, age): # This is the constructor method that is called when creating a new Person object # It takes two parameters, name and age, and initializes them as attributes of the object self.name = name self.age = age def greet(self): # This is a method of the Person class that prints a greeting message print('Hello, my name is ' + self.name) 

Name und Alter sind die beiden Eigenschaften der Person-Klasse. Darüber hinaus gibt es eine Funktion namens „greet“, die eine Begrüßung ausgibt.

Objekte in Python:

Ein Objekt ist eine bestimmte Instanz einer Klasse mit einzigartigen Eigenschaften und Funktionen. Nachdem eine Klasse eingerichtet wurde, können Sie darauf basierende Objekte erstellen. Mithilfe des Klassenkonstruktors können Sie ein Objekt einer Klasse in Python erstellen. Die Attribute des Objekts werden im Konstruktor initialisiert, einer speziellen Prozedur mit dem Namen __init__.

ungültig 0

Syntax:

 # Declare an object of a class object_name = Class_Name(arguments) 

Beispiel:

Code:

 class Person: def __init__(self, name, age): self.name = name self.age = age def greet(self): print('Hello, my name is ' + self.name) # Create a new instance of the Person class and assign it to the variable person1 person1 = Person('Ayan', 25) person1.greet() 

Ausgabe:

 'Hello, my name is Ayan' 

Der Selbstparameter

Der Selbstparameter bezieht sich auf die aktuelle Instanz der Klasse und greift auf die Klassenvariablen zu. Wir können statt self alles verwenden, aber es muss der erste Parameter jeder Funktion sein, die zur Klasse gehört.

Primzahl in Java

_ _init_ _ Methode

Um eine Instanz einer Klasse in Python zu erstellen, wird eine bestimmte Funktion namens __init__ aufgerufen. Obwohl er zum Festlegen der Objektattribute verwendet wird, wird er häufig als Konstruktor bezeichnet.

Das Selbstargument ist das einzige, das für die Methode __init__ erforderlich ist. Dieses Argument bezieht sich auf die neu generierte Instanz der Klasse. Um die Werte jedes mit den Objekten verknüpften Attributs zu initialisieren, können Sie zusätzliche Argumente in der Methode __init__ deklarieren.

Klassen- und Instanzvariablen

Alle Instanzen einer Klasse tauschen Klassenvariablen aus. Sie funktionieren unabhängig von Klassenmethoden und können über den Klassennamen aufgerufen werden. Hier ist eine Illustration:

Code:

 class Person: count = 0 # This is a class variable def __init__(self, name, age): self.name = name # This is an instance variable self.age = age Person.count += 1 # Accessing the class variable using the name of the class person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(Person.count) 

Ausgabe:

 2 

Instanzvariablen hingegen sind für jede Instanz einer Klasse spezifisch. Sie werden mit dem Argument self in der Methode __init__ angegeben. Hier ist eine Illustration:

Mergesort-Algorithmus

Code:

 class Person: def __init__(self, name, age): self.name = name # This is an instance variable self.age = age person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(person1.name) print(person2.age) 

Ausgabe:

 Ayan 30 

Klassenvariablen werden getrennt von allen Klassenmethoden erstellt und von allen Klassenkopien gemeinsam genutzt. Jede Instanz einer Klasse verfügt über eigene Instanzvariablen, die in der Methode __init__ mithilfe des Arguments self angegeben werden.

Abschluss:

Zusammenfassend lässt sich sagen, dass die Klassen- und Objektkonzepte von Python überzeugende Ideen sind, mit denen Sie wiederverwendbare Programme schreiben können. Sie können Informationen und Fähigkeiten in einer einzigen Entität kombinieren, die zum Erstellen vieler Objekte verwendet werden kann, indem Sie eine Klasse einrichten. Mithilfe der Punktnotation können Sie auf die Methoden und Eigenschaften eines Objekts zugreifen, nachdem es erstellt wurde. Sie können logischeren, effektiveren und besser verwaltbaren Code entwickeln, indem Sie die Klassen und Objekte von Python verstehen.