Heim  >  Artikel  >  Backend-Entwicklung  >  So erstellen Sie eine Liste von Objekten in einer Python-Klasse

So erstellen Sie eine Liste von Objekten in einer Python-Klasse

WBOY
WBOYnach vorne
2023-08-19 18:33:221252Durchsuche

So erstellen Sie eine Liste von Objekten in einer Python-Klasse

Python ist eine dynamische und technologieaffine Programmiersprache, die objektorientierte Programmierung (OOP) unterstützt. Der Kern von OOP ist das Konzept von Objekten, bei denen es sich um Instanzen von Klassen handelt. In Python dienen Klassen als Blaupausen für die Erstellung von Objekten mit bestimmten Eigenschaften und Methoden. Ein häufiger Anwendungsfall in OOP besteht darin, eine Liste von Objekten zu erstellen, wobei jedes Objekt eine eindeutige Instanz einer Klasse darstellt.

In diesem Artikel besprechen wir den Prozess der Erstellung einer Liste von Objekten in einer Python-Klasse. Wir werden die grundlegenden Schritte besprechen, darunter das Definieren einer Klasse, das Erstellen von Objekten dieser Klasse, das Hinzufügen dieser zu einer Liste und das Durchführen verschiedener Operationen an den Objekten in der Liste. Um ein klares Verständnis zu ermöglichen, werden wir auch Beispiele und Ergebnisse bereitstellen, um die besprochenen Konzepte zu veranschaulichen. Tauchen wir also ein in die Welt der Erstellung von Objektlisten in Python-Klassen!

Erstellen Sie eine Klasse in Python

Kurz gesagt ist eine Klasse in Python ein Entwurf oder eine Vorlage zum Erstellen von Objekten und zum Definieren von Eigenschaften (Eigenschaften) und Verhaltensweisen (Methoden). Wir verwenden das Schlüsselwort class, gefolgt vom Klassennamen, und definieren Eigenschaften und Methoden im Klassenblock.

Hier ist ein Beispiel für die Erstellung einer Klasse in Python:

class Student:
    def __init__(self, name, age, grade):
        self.name = name
        self.age = age
        self.grade = grade

Im obigen Beispiel haben wir eine Python-Klasse namens „Student“ skizziert, die einen speziellen Konstruktor namens „init“ enthält. Konstruktoren werden automatisch aufgerufen, wenn eine Instanz einer Klasse mithilfe eines Klassenaufrufs gefolgt von Klammern erstellt wird. Die Methode „init“ akzeptiert drei Parameter – „name“, „age“ und „grade“ – die zum Initialisieren der Eigenschaften der Instanz mithilfe des Schlüsselworts „self“ verwendet werden.

Objekte von Klassen erstellen

In Python umfasst das Erstellen eines Objekts einer Klasse das Instanziieren oder Erstellen einer Instanz der Klasse. Klassen dienen als Blaupausen oder Vorlagen für Objekte mit bestimmten Eigenschaften und Verhaltensweisen. Nachdem Sie eine Klasse definiert haben, können Sie mehrere Objekte oder Instanzen dieser Klasse erstellen, jedes mit seinem eigenen, eindeutigen Satz von Eigenschaftswerten.

Beispiel

Hier ist ein Beispiel für die Erstellung eines Objekts oder einer Instanz einer Klasse:

# Create objects of the Student class
student1 = Student("Alice", 18, "A")
student2 = Student("Bob", 17, "B")
student3 = Student("Charlie", 19, "A+")

# Access and print attributes of the objects
print("Student 1:")
print("Name:", student1.name)
print("Age:", student1.age)
print("Grade:", student1.grade)

print("Student 2:")
print("Name:", student2.name)
print("Age:", student2.age)
print("Grade:", student2.grade)

print("Student 3:")
print("Name:", student3.name)
print("Age:", student3.age)
print("Grade:", student3.grade)

Ausgabe

Student 1:
Name: Alice
Age: 18
Grade: A
Student 2:
Name: Bob
Age: 17
Grade: B
Student 3:
Name: Charlie
Age: 19
Grade: A+

In diesem Beispiel instanziieren wir drei Objekte der Klasse „Student“ – student1, student2 und student3 – jeweils mit eindeutigen Attributwerten, einschließlich Name, Alter und Noten. Anschließend verwenden wir die Punktnotation, um auf die Eigenschaftswerte jedes Objekts zuzugreifen und diese auszudrucken. Dies veranschaulicht den Prozess des Erstellens von Objekten einer Klasse und des Abrufens ihrer Eigenschaftswerte, um die gewünschte Ausgabe zu erhalten.

Erstellen Sie eine Liste von Objekten in einer Klasse

In Python ist das Erstellen einer Liste von Objekten innerhalb einer Klasse eine nützliche Funktion, mit der Sie mehrere Instanzen oder Werte einer Klasse speichern und verwalten können. Dies kann hilfreich sein, wenn es sich um Objekte handelt, die ähnliche Eigenschaften aufweisen oder zur gleichen Kategorie gehören. Lassen Sie uns anhand eines Beispiels untersuchen, wie eine Liste von Objekten in einer Klasse erstellt wird, um das Konzept besser zu verstehen.

class Student:
    def __init__(self, name, age, grade):
        self.name = name
        self.age = age
        self.grade = grade
        self.students_list = []  # Initialize an empty list to store student objects

    def add_student(self, student):
        self.students_list.append(student)  # Append student objects to the list

# Create student objects
student1 = Student("Alice", 18, "A")
student2 = Student("Bob", 17, "B")
student3 = Student("Charlie", 19, "A+")

# Add student objects to the list
student1.add_student(student1)
student1.add_student(student2)
student1.add_student(student3)

# Access objects in the list
print(student1.students_list) 

Ausgabe

[<__main__.Student object at 0x7f8c87e35e80>, <__main__.Student object at 0x7f8c87e35ef0>, <__main__.Student object at 0x7f8c87e35f60>]

Die Ausgabe hängt die Liste der Studentenobjekte an das Attribut „students_list“ des Objekts „student1“ an. Jedes Objekt wird als dargestellt, wobei „xx“ eine Hexadezimalzahl ist, die die Speicheradresse des Objekts darstellt. Beachten Sie, dass sich die Speicheradressen bei jeder Codeausführung ändern können, da sie von der Speicherzuweisung des Systems abhängen.

Auf Objekte in der Liste zugreifen

Nachdem wir Studentenobjekte zu „students_list“ hinzugefügt haben, können wir mithilfe der Standardlistenindizierung oder -iteration problemlos auf sie zugreifen. Schauen wir uns ein Beispiel an, um zu sehen, wie auf Objekte in einer Liste zugegriffen wird.

class Student:
    def __init__(self, name, age, grade):
        self.name = name
        self.age = age
        self.grade = grade
        self.students_list = []

    def add_student(self, student):
        self.students_list.append(student)

    def get_students(self):
        return self.students_list

# Create student objects
student1 = Student("Alice", 18, "A")
student2 = Student("Bob", 17, "B")
student3 = Student("Charlie", 19, "A+")

# Add student objects to the list
student1.add_student(student1)
student1.add_student(student2)
student1.add_student(student3)

# Access objects in the list
students_list = student1.get_students()  # Get the list of student objects
# Access objects using list indexing
print(students_list[0].name)  
print(students_list[1].name)
print(students_list[2].name) 

Ausgabe

Alice
Bob
Charlie

In der Ausgabe können Sie sehen, dass alle Namen der Schüler unter Verwendung der Listenindexnummer gedruckt werden. Auf die Eigenschaft „name“ jedes Schülerobjekts wird dann mithilfe der Punktnotation zugegriffen, sodass wir den Namen des Schülers ermitteln können.

Fazit

Zusammenfassend lässt sich sagen, dass die Nutzung von Objektlisten in Python-Klassen eine wertvolle Technik ist, um mehrere Instanzen einer Klasse effizient zu speichern und zu verwalten. Es vereinfacht das Speichern, Abrufen und Bearbeiten von Objekten und vereinfacht dadurch die Durchführung verschiedener Vorgänge an ihnen. Sie können problemlos auf Objekte in einer Liste zugreifen, diese hinzufügen, entfernen und ändern, indem Sie Ihrer Klasse eine Listeneigenschaft hinzufügen und Klassen- oder Instanzmethoden verwenden, um Objekte zur Liste hinzuzufügen. Dieser Ansatz ist besonders vorteilhaft in Szenarien, in denen Sie mehrere Instanzen einer Klasse mit ähnlichen Eigenschaften oder Verhalten verwalten müssen.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie eine Liste von Objekten in einer Python-Klasse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen