3

I'am a newbie in Python, however I'am fondling a code, which is more of encapsulation methods/functions in a class. The IDE underlined my code and gave me the option to make my method static, which I did. Notably they gave me the same output as my normal code.

My Normal Code

class firstClass():
    def method1(self):
        print "My first method defined in a Class"

    def method2(self, somestring):
        print "My second method in a Class: " + somestring


def main(c=firstClass()):
    c.method1()
    c.method2("somestring")


if __name__ == '__main__':
    main()

My IDE-Edited code

class firstClass():
    @staticmethod  # What is the meaning of this line really?
    def method1():
        print "My first method defined in a Class"

    @staticmethod
    def method2(somestring):
        print "My second method in a Class" + somestring, "\n"


def main(c=firstClass()):
    c.method1()
    c.method2("somestring")


if __name__ == '__main__':
    main()

I figured out that when IDE-Edited the method to static, it did pass in @staticmethod before my method as well as removed the self argument passed into the method. But I do not understand what a static method is all about in Python. What does it mean to make a method static in Python?

Stanley S
  • 1,052
  • 13
  • 22
Afolabi Olaoluwa
  • 1,898
  • 3
  • 16
  • 37

0 Answers0