Different ways to access Instance Variable in Python

Instance attributes are those attributes that are not shared by objects. Every object has its own copy of the instance attribute i.e. for every object, instance attribute is different.

There are two ways to access the instance variable of class:

  • Within the class by using self and object reference.
  • Using getattr() method

Example 1: Using Self and object reference

filter_none

edit
close

play_arrow

link
brightness_4
code

#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)

chevron_right


Output:

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

Example 2: Using getattr()

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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'

chevron_right


Output:

Harsh
True
152



My Personal Notes arrow_drop_up


If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.