What is the benefit to using a ‘get function’ for a python class? [closed]

There is no benefit. People coming to Python from other languages (e.g., Java) sometimes do this because they’re used to it. In Python there is no point to creating these sorts of getters and setters that don’t do anything but directly get and set the underlying variable. Properties allow you to transparently swap in logic if at a later time you need to do something more complex than just get/set the value.

There can be a benefit in using getters/setters, but in Python there is no real reason to use trivial getters/setters instead of just getting/setting the attribute directly. The only reason I can think of would be if you have to maintain compatibility with an existing API that requires a certain set of methods to be available.

Leave a Comment