Access static variable from static method
oop, python, static-methods, static-variables
Solution
Use `@classmethod` instead of `@staticmethod`. Found it just after writing the question.
In many languages (C++, Java etc.) "static" and "class" methods are synonyms. Not in Python.
Problem
I want to access a static variable from a static method: ``` #!/usr/bin/env python class Messenger: name = "world" @staticmethod def get_msg(grrrr): return "hello " + grrrr.name print Messenger.get_msg(Messenger) ``` How to do it without passing `grrrr` to a method? Is this the true OOP?.. Anything like `name` or `self.name` seems not working: ``` NameError: global name 'name' is not defined ``` and ``` NameError: global name 'self' is not defined ```