Curriculum
In Python, a static method is a method that belongs to a class and does not operate on any specific instance of that class. Unlike instance methods, static methods do not have access to the instance or class variables. They are defined using the @staticmethod
decorator.
Here’s an example to demonstrate the use of static methods in Python:
class Calculator: @staticmethod def add(x, y): return x + y print(Calculator.add(2, 3)) # Output: 5
In the example above, we have a class Calculator
with a static method add
. This method takes two arguments x
and y
and returns their sum. Since the method is static, we can call it using the class name Calculator.add()
instead of an instance of the class.
Here’s another example to demonstrate the use of static methods to group together common functionality that does not depend on instance or class variables:
class StringUtils: @staticmethod def is_palindrome(word): return word == word[::-1] print(StringUtils.is_palindrome("racecar")) # Output: True print(StringUtils.is_palindrome("hello")) # Output: False
In the example above, we have a class StringUtils
with a static method is_palindrome
. This method takes a string word
as an argument and returns True if it is a palindrome (i.e., the same forwards and backwards), and False otherwise.
The main use of static methods is to group together related functionality that is not directly related to any instance or class variables. Static methods can be useful for implementing utility functions, helper functions, or algorithms that do not require any state information from the class or its instances.
Some benefits of using static methods in Python include: