Python vars() Funktion

Python3 内置函数Python3 integrierte Funktionen


vars()ist eine in Python eingebaute Funktion zum Zurückgeben des Wörterbuchs eines Objekts__dict__Attribute hinzu.

vars()Gibt ein Wörterbuch mit allen beschreibbaren Attributen des Objekts zurück. Für Objekte, denen__dict__ein __dict__ fehlt, wird eine TypeError-Ausnahme ausgelöst.

Wortdefinitionen: vars 是 variables(变量)的缩写。


Grundlegende Syntax und Parameter

Syntaxformat

vars(object)

Parameterbeschreibung

  • Parameter object:
    • Typ: Beliebiges Objekt
    • Beschreibung: Das Objekt, dessen Attribute abgerufen werden sollen.

Funktionsbeschreibung

  • Rückgabewert: gibt das__dict____dict__-Wörterbuch des Objekts zurück.
  • Hinweis: Wenn es ohne Argumente aufgerufen wird, ist es äquivalent zu locals()locals()。

Beispiele

Beispiel 1: Anzeigen von Objektattributen

Beispiel

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

p = Person("Tom", 20)

# __dict__ des Objekts anzeigen
print(vars(p))
# Ausgabe: {'name': 'Tom', 'age': 20}

# Zugriff auf das Dictionary
print(vars(p)["name"])  # Ausgabe: Tom

Erwartete Ausgabe:

{'name': 'Tom', 'age': 20}
Tom

Codeanalyse:

  1. vars() gibt ein Dictionary der Instanzattribute des Objekts zurück.
  2. Auf Attribute kann direkt über das Dictionary zugegriffen werden.

Beispiel 2: Modul- und Klassen-__dict__

Beispiel

# Das __dict__ des Moduls
import os
print(len(vars(os)))  # Ausgabe: die Anzahl der Attribute des os-Moduls

# Das __dict__ der Klasse (ohne Instanzattribute)
class MyClass:
    class_attr = 100
    def __init__(self):
        self.instance_attr = 200

print(vars(MyClass))
# Ausgabe: {'__module__': '__main__', 'class_attr': 100, '__init__': ...}

Ausgabe:

vars() ist sehr hilfreich, um die Struktur von Objekten zu verstehen.

vars()Es wird häufig zum Debuggen und für den dynamischen Attributzugriff verwendet.


Python3 内置函数Python3 integrierte Funktionen


Andere Erweiterungen