función vars() en Python

Esta es una función incorporada en Python. El método vars() toma solo un parámetro y eso también es opcional. Toma un objeto como parámetro que puede ser un módulo, una clase, una instancia o cualquier objeto que tenga el atributo __dict__.  
Sintaxis: 
 

vars(object)

El método devuelve el atributo __dict__ para un módulo, clase, instancia o cualquier otro objeto si el mismo tiene un atributo __dict__. Si el objeto no coincide con el atributo, genera una excepción TypeError . Los objetos como módulos e instancias tienen un atributo __dict__ actualizable; sin embargo, otros objetos pueden tener restricciones escritas en sus atributos __dict__. vars() actúa como el método locals() cuando se pasa un argumento vacío, lo que implica que el diccionario local solo es útil para lecturas, ya que se ignoran las actualizaciones del diccionario local. 
 

Python3

# Python program to illustrate
# working of vars() method in Python
 
class Geeks:
  def __init__(self, name1 = "Arun", num2 = 46, name3 = "Rishab"):
    self.name1 = name1
    self.num2 = num2
    self.name3 = name3
   
GeeksforGeeks = Geeks()
print(vars(GeeksforGeeks))

Producción: 
 

{'num2': 46, 'name1': 'Arun', 'name3': 'Rishab'}

Python3

# Python program to illustrating
# the use of vars() and locals
# when no argument is passed and
# how vars() act as locals().
class Geeks(object):
    def __init__(self):
        self.num1 = 20
        self.num2 = "this is returned"
 
    def __repr__(self):
        return "Geeks() is returned"
 
    def loc(self):
        ans = 21
        return locals()
     
    # Works same as locals()
    def code(self):
        ans = 10
        return vars()
 
    def prog(self):
        ans = "this is not printed"
        return vars(self)
     
 
if __name__ == "__main__":
    obj = Geeks()
    print (obj.loc())
    print (obj.code())
    print (obj.prog())

Producción: 
 

{'ans': 21, 'self': Geeks() is returned}
{'ans': 10, 'self': Geeks() is returned}
{'num1': 20, 'num2': 'this is returned'}

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *