near_me 
   Linear Algebra 
 keyboard_arrow_down 54 guides
 chevron_leftCookbooks
  check_circle
 Mark as learned thumb_up
 0
 thumb_down
 0
 chat_bubble_outline
 0
 Comment  auto_stories Bi-column layout 
 settings
 Having classes that refer to other classes in Python
 schedule Aug 12, 2023 
 Last updated  local_offer 
 Tags Python
  tocTable of Contents
 expand_more Master the mathematics behind data science with 100+ top-tier guides
Start your free 7-days trial now!
   Start your free 7-days trial now!
We can make one class refer to methods and attributes of another class. This is done by storing an instance of a class as an attribute for another.
Example
In the below example, the class Dog has an attribute that refers to an instance of the Sword class. Every time we call the __init__ method in class Dog, we are automatically creating an instance of the Sword class and storing it in the attribute self.weapon:
        
        
            
                
                
                    class Sword():
    def print_weapon(self):        print("I have a sword!")
class Dog():
    def __init__(self, name, age):         self.number_of_legs = 4        self.weapon = Sword()         self.name = name        self.age = age
    def do_something(self):        self.weapon.print_weapon()     #Referring to print_weapon method in Sword 
my_dog = Dog("Roxas", 26) my_dog.do_something()
                
            
            I have a sword!
        
    This prevents cluttering in our classes, so that we do not actually have to define all the methods and attributes accessible by a class in that class itself, and can draw upon methods and attributes defined in other classes.
Published by Arthur Yanagisawa
 Edited by 0 others
 Did you find this page useful?
 thumb_up
 thumb_down
 Comment
 Citation
  Ask a question or leave a feedback...
 thumb_up
 0
 thumb_down
 0
 chat_bubble_outline
 0
 settings
 Enjoy our search
 Hit / to insta-search docs and recipes!
 