Attribut zu Objekt in Python hinzufügen

Rana Hasnain Khan 15 Februar 2024
Attribut zu Objekt in Python hinzufügen

Wir werden vorstellen, wie man einem Objekt in Python ein Attribut hinzufügt. Wir werden auch vorstellen, wie wir die Attribute eines Objekts in Python mit Beispielen ändern können.

Attribut zu Objekt in Python hinzufügen

In Python arbeiten wir hin und wieder mit Objekten, weil Python eine objektorientierte Sprache ist. Objekte machen unser Coding wiederverwendbar und komplexe Strukturen einfach umsetzbar.

Der Hauptteil von Objekten sind ihre Attribute. Attribute definieren, was die Eigenschaften eines bestimmten Objekts sind.

Bei der Arbeit mit Objekten kann es viele Situationen geben, in denen wir einem Objekt mitten im Programm ein neues Attribut hinzufügen müssen.

Python stellt eine Funktion setattr() zur Verfügung, mit der das neue Attribut eines Objekts einfach gesetzt werden kann. Diese Funktion kann sogar den Wert des Attributs ersetzen.

Es ist eine Funktion, mit deren Hilfe wir den Wert von Attributen des Objekts zuweisen können.

Diese Methode bietet uns viele Möglichkeiten, Variablen durch bestimmte Konstruktoren und Objektfunktionen Werte zuzuweisen. Durch die Verwendung dieser Funktion sind wir auch in der Lage, andere Ersatzmethoden zur Wertzuweisung zu haben.

Lassen Sie uns nun die Struktur dieser setattr()-Funktion besprechen. Die Struktur, die ein setattr() aufbaut, ist unten gezeigt.

# python
setattr(object, name, value)

Wie Sie der Syntax dieser Funktion entnehmen können, übergeben wir drei Argumente an die Funktion, die es uns dann ermöglicht, die Attribute eines Objekts festzulegen.

Es gibt drei Parameter, die wie folgt angegeben werden:

  1. Objekt – Wir übergeben den Namen des Objekts, das wir erstellt haben und für das wir Attribute festlegen möchten.
  2. Name – Dies ist der Name des Attributs dieses Objekts, dem wir einen Wert zuweisen möchten.
  3. Wert - Hier übergeben wir den Attributwert.

Lassen Sie uns ein Beispiel durchgehen, in dem wir eine Klasse von Schülern erstellen. Wir erstellen einen neuen Schüler und weisen ihm einige Attribute zu, wie unten gezeigt.

# python
class Students:
    name = "Rana Hasnain"
    roll_no = "BC140402269"
    cgpa = 3.5


new_student = Students()
setattr(new_student, "name", "James Bond")
setattr(new_student, "roll_no", "007")
setattr(new_student, "cgpa", 4)

print("New Student Name:", new_student.name)
print("New Student Roll #:", new_student.roll_no)
print("New Student Cgpa:", new_student.cgpa)

Ausgang:

Hinzufügen eines Attributs zu einem Objekt in Python

Wie Sie im obigen Beispiel sehen können, war es ziemlich einfach, die Attribute des von uns erstellten Objekts festzulegen. Lassen Sie uns nun ein anderes Szenario diskutieren.

Nehmen wir an, wir haben ein neues Objekt und möchten ein Attribut setzen, das in der Klasse fehlt.

In einigen Fällen gibt es keine Attribute oder es werden nicht alle Attribute in einer Klasse erstellt. In diesem Fall weisen wir ein neues Attribut zu und können einen Wert dafür festlegen.

Aber um dies zu erreichen, sollte das Objekt die Methode __dict__() implementieren. Lassen Sie uns ein Beispiel durchgehen und versuchen, einem Attribut, das nicht existiert, Werte zuzuweisen.

Wir verwenden das obige Beispiel und versuchen, ein neues Attribut Grad zuzuweisen, wie unten gezeigt.

# python
class Students:
    name = "Rana Hasnain"
    roll_no = "BC140402269"
    cgpa = 3.5


new_student = Students()
setattr(new_student, "name", "James Bond")
setattr(new_student, "roll_no", "007")
setattr(new_student, "cgpa", 4)
setattr(new_student, "degree", "BSCS")

print("New Student Name:", new_student.name)
print("New Student Roll #:", new_student.roll_no)
print("New Student Cgpa:", new_student.cgpa)
print("New Student Degree:", new_student.degree)

Ausgang:

Hinzufügen eines nicht vorhandenen Attributs zu einem Objekt in Python

Wie Sie dem obigen Beispiel entnehmen können, kann diese Funktion auch neue, nicht vorhandene Attribute anlegen und ihnen Werte zuweisen.

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

Verwandter Artikel - Python Object