property is used for managing attribute access. By defualt, Python allows unrestricted access to object attributes. Attributes can be added, retrieved, modified and deleted freely.
Using properties gives some features present in statically typed languages like C++ or C#. That means, instead of accessing attributes directly one can define separate methods for getting (getter), setting (setter) or deleting (deleter) them.
- Returns a property attribute for new-style classes (classes that derive from object).