Class Variables Andmethds

UpComing SoftWare Training Demos

πŸš€ *Gen AI EngineerΒ Telugu (Production Focused)*
πŸ—“οΈ *Date:* 30th Sept 2026, 07:00AM IST
πŸ“ *Register Now!:*
https://www.vlrt.in/gr
πŸ‘₯ *Join WA Community:*
https://www.vlrt.in/gw
πŸ’‘*Course Content:*
https://www.vlrt.in/ai
▢️ *Demo Videos:*
https://www.vlrt.in/gv

πŸš€ *Service now Admin/ Development (ITSM)FREE Demo in Telugu*
πŸ—“οΈ *Date:* 30th Sept 2026, 08:00AM IST
πŸ“ *Register Now!:*
https://www.vlrt.in/7r
πŸ‘₯ *Join WA Community:*
https://www.vlrt.in/7w
πŸ’‘*Course Content:*
https://www.vlrt.in/7c
▢️ *Demo Videos:*
https://www.vlrt.in/7v

πŸš€ *Vulnerability Management Training Demo*
πŸ—“οΈ *Date:* 30th Sept 2026, 09:00 AM IST
πŸ“*Register Now!:*
https://www.vlrt.in/vr
πŸ‘₯ *Join Community:*
https://www.vlrt.in/cw
πŸ’‘ *Course Content:*
https://www.vlrt.in/vc
▢️ *Demo Videos:*
https://www.vlrt.in/Vm

Class Variables

Class variables are variables that are shared by all instances of a class. They are defined directly within the class but outside of any method. Unlike instance variables, which are unique to each object, a single copy of a class variable is shared among all objects of that class. They are useful for storing data that is common to all instances, such as constants or default values.

Example:

Consider a School class. All students in the school share the same school name. This can be stored as a class variable.

class School:
    # This is a class variable
    school_name = "Springfield Elementary"

    def __init__(self, student_name):
        self.student_name = student_name  # This is an instance variable

# Creating two student objects
student1 = School("Bart Simpson")
student2 = School("Lisa Simpson")

print(f"{student1.student_name} attends {student1.school_name}.")
print(f"{student2.student_name} attends {student2.school_name}.")

# You can also access the class variable directly from the class
print(School.school_name)

In this example, school_name is a class variable. Both student1 and student2 objects access the exact same value for school_name.


Methods

Methods are functions defined inside a class that describe the behaviors of an object. There are two main types of methods related to class and instance variables:

  1. Instance Methods: These are the most common type of method. They operate on an instance of a class and can access both instance and class variables. They always have self as their first parameter, which refers to the specific object the method is called on.
  2. Class Methods: These methods operate on the class itself, not on an instance. They are declared with the @classmethod decorator and take cls (short for class) as their first parameter, which refers to the class itself. They are often used to create factory methods or to modify class variables.

Example:

Let’s expand the School class with both types of methods.

class School:
    # Class variable
    school_name = "Springfield Elementary"
    total_students = 0

    def __init__(self, student_name):
        self.student_name = student_name
        School.total_students += 1  # Incrementing the class variable

    # Instance Method
    def get_student_info(self):
        return f"{self.student_name} is a student at {self.school_name}."

    # Class Method
    @classmethod
    def get_total_students(cls):
        return f"The total number of students is {cls.total_students}."

# Creating student objects
student1 = School("Bart Simpson")
student2 = School("Lisa Simpson")

# Calling the instance method
print(student1.get_student_info())

# Calling the class method using the class
print(School.get_total_students())

In this example, get_student_info is an instance method that uses self to access the specific student’s name. get_total_students is a class method that uses cls to access and report the shared total_students variable for the entire class.

This program demonstrates the use of class variables, instance variables, and different types of methods in Python. It creates a School class to manage student information and a total count of students.

Class and Instance Variables

  • school_name = "Springfield Elementary": This is a class variable. It’s defined directly inside the class and is shared by all objects created from the School class.
  • total_students = 0: This is also a class variable. It keeps a running count of all School objects created.
  • self.student_name = student_name: This is an instance variable. It’s created within the __init__ method and is unique to each individual student object (student1, student2, etc.).

Methods

  • __init__(self, student_name): This is the constructor method. It’s called automatically whenever a new School object is created. It initializes the unique student_name for that object and increments the shared total_students class variable.
  • get_student_info(self): This is an instance method. It uses the self parameter to access and return a string that includes both the unique student_name (an instance variable) and the shared school_name (a class variable) for a specific object.
  • get_total_students(cls): This is a class method, indicated by the @classmethod decorator. It takes cls (the class itself) as its first parameter instead of self (the instance). This method can only access and operate on class variables, such as cls.total_students. It’s called on the class itself (School.get_total_students()) rather than on an object.

Program Flow

  1. student1 = School("Bart Simpson"): A new School object is created. The __init__ method is called, setting student1.student_name to “Bart Simpson” and incrementing School.total_students to 1.
  2. student2 = School("Lisa Simpson"): Another School object is created. __init__ is called again, setting student2.student_name to “Lisa Simpson” and incrementing School.total_students to 2.
  3. print(student1.get_student_info()): The get_student_info instance method is called on the student1 object. It returns the string “Bart Simpson is a student at Springfield Elementary.”
  4. print(School.get_total_students()): The get_total_students class method is called on the School class. It returns the string “The total number of students is 2.”

Similar Posts

  • Decorators in Python

    Decorators in Python A decorator is a function that modifies the behavior of another function without permanently modifying it. Decorators are a powerful tool that use closure functions. Basic Concept A decorator: Simple Example python def simple_decorator(func): def wrapper(): print(“Something is happening before the function is called.”) func() print(“Something is happening after the function is…

  • replace(), join(), split(), rsplit(), and splitlines() methods in Python

    1. replace() Method Purpose: Replaces occurrences of a substring with another substring.Syntax: python string.replace(old, new[, count]) Examples: Example 1: Basic Replacement python text = “Hello World” new_text = text.replace(“World”, “Python”) print(new_text) # Output: “Hello Python” Example 2: Limiting Replacements (count) python text = “apple apple apple” new_text = text.replace(“apple”, “orange”, 2) print(new_text) # Output: “orange orange apple”…

  • Escape Sequences in Python

    Escape Sequences in Python Regular Expressions – Detailed Explanation Escape sequences are used to match literal characters that would otherwise be interpreted as special regex metacharacters. 1. \\ – Backslash Description: Matches a literal backslash character Example 1: Matching file paths with backslashes python import re text = “C:\\Windows\\System32 D:\\Program Files\\” result = re.findall(r'[A-Z]:\\\w+’, text) print(result) #…

  • Python Course content for kids

    Module 1: The Basics (Getting the Computer to Talk) Goal: Understand how to communicate with the computer and store information. Module 2: Making Decisions (Teaching the Computer to Think) Goal: Learn how to use logic to control the flow of a program. Module 3: Loops (Working Smarter, Not Harder) Goal: Understand how to automate repetitive…

  • String Alignment and Padding in Python

    String Alignment and Padding in Python In Python, you can align and pad strings to make them visually consistent in output. The main methods used for this are: 1. str.ljust(width, fillchar) Left-aligns the string and fills remaining space with a specified character (default: space). Syntax: python string.ljust(width, fillchar=’ ‘) Example: python text = “Python” print(text.ljust(10)) #…

  • Variable Length Positional Arguments in Python

    Variable Length Positional Arguments in Python Variable length positional arguments allow a function to accept any number of positional arguments. This is done using the *args syntax. Syntax python def function_name(*args): # function body # args becomes a tuple containing all positional arguments Simple Examples Example 1: Basic *args python def print_numbers(*args): print(“Numbers received:”, args) print(“Type of…

Leave a Reply

Your email address will not be published. Required fields are marked *