Fonction vars() de Python

Python3 内置函数Fonctions intégrées de Python3


vars()est une fonction native de Python pour renvoyer les attributs d'un objet__dict__des attributs.

vars()Renvoie un dictionnaire contenant tous les attributs accessibles en écriture de l'objet. Pour les objets dépourvus d'__dict__un __dict__, une exception TypeError est levée.

Définitions de mots: vars 是 variables(变量)的缩写。


Syntaxe de base et paramètres

Format de syntaxe

vars(object)

Description du paramètre

  • Paramètre object:
    • Type : Tout objet
    • Description : L'objet dont les attributs doivent être obtenus.

Description de la fonction

  • Valeur de retour: renvoie le__dict__dictionnaire __dict__ de l'objet.
  • Remarque: lorsqu'elle est appelée sans arguments, elle équivaut à locals()locals()。

Exemples

Exemple 1 : Affichage des attributs d'un objet

Exemple

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

p = Person("Tom", 20)

# Afficher le __dict__ de l'objet
print(vars(p))
# Sortie : {'name': 'Tom', 'age': 20}

# Accéder au dictionnaire
print(vars(p)["name"])  # Sortie : Tom

Sortie attendue :

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

Analyse du code :

  1. vars() renvoie un dictionnaire des attributs d'instance de l'objet.
  2. Les attributs sont accessibles directement via le dictionnaire.

Exemple 2 : Module et classe __dict__

Exemple

# Le __dict__ du module
import os
print(len(vars(os)))  # Sortie : le nombre d'attributs du module os

# Le __dict__ de la classe (à l'exclusion des attributs d'instance)
class MyClass:
    class_attr = 100
    def __init__(self):
        self.instance_attr = 200

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

Sortie :

vars() est très utile pour comprendre la structure d'un objet.

vars()Il est souvent utilisé pour le débogage et l'accès dynamique aux attributs.


Python3 内置函数Fonctions intégrées de Python3


Autres extensions