Diferentes formas de acceder a la variable de instancia en Python

Los atributos de instancia son aquellos atributos que no son compartidos por los objetos. Cada objeto tiene su propia copia del atributo de instancia, es decir, para cada objeto, el atributo de instancia es diferente.

Hay dos formas de acceder a la variable de instancia de la clase:

  • Dentro de la clase mediante el uso de referencias propias y de objetos.
  • Usando el getattr()método

Ejemplo 1: uso de la referencia a sí mismo y al objeto

#creating class
class student:
      
    # constructor
    def __init__(self, name, rollno):
          
        # instance variable
        self.name = name
        self.rollno = rollno
       
    def display(self):
          
        # using self to access 
        # variable inside class
        print("hello my name is:", self.name)
        print("my roll number is:", self.rollno)
          
# Driver Code
# object created
s = student('HARRY', 1001)
  
# function call through object
s.display()
  
# accessing variable from 
# outside the class
print(s.name)

Producción:

hello my name is: HARRY
my roll number is: 1001
HARRY

Ejemplo 2: Usar getattr()

# Python code for accessing attributes of class 
class emp: 
    name='Harsh'
    salary='25000'
    def show(self): 
        print(self.name)
        print(self.salary)
          
# Driver Code
e1 = emp() 
# Use getattr instead of e1.name 
print(getattr(e1,'name'))
    
# returns true if object has attribute 
print(hasattr(e1,'name'))
    
# sets an  attribute  
setattr(e1,'height',152) 
    
# returns the value of attribute name height 
print(getattr(e1,'height'))
    
# delete the attribute 
delattr(emp,'salary') 

Producción:

Harsh
True
152

Publicación traducida automáticamente

Artículo escrito por mastersiddharthgupta 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 *