In Python, variables can be either public or private. A private variable is one that cannot be accessed or modified from outside the class. In Python, private variables are denoted by starting their name with two underscores (__) followed by the variable name. For example, if we define a private variable named "salary", we would write "__salary".
The purpose of making a variable private is to prevent direct access or modification to the variable from outside the class, which can help to maintain data integrity and improve code security. Private variables can only be accessed or modified within the class, using class methods that are specifically designed to work with those variables.
To access a private variable, we use a method defined in the class that returns the value of the variable. This method is commonly known as a getter method. Similarly, to modify a private variable, we use a method that takes a new value as an argument, commonly known as a setter method.
For example:
class Employee: def __init__(self, name, salary): self.name = name self.__salary = salary def get_salary(self): return self.__salary def set_salary(self, new_salary): self.__salary = new_salary
In this example, the "salary" variable is private, and we have defined two methods, "get_salary()" and "set_salary()", to access and modify it respectively.
It's important to note that even though private variables are not directly accessible from outside the class, they can still be accessed using name mangling. Name mangling is a mechanism that Python uses to rename private variables in a way that makes them harder to access from outside the class. However, it is generally not recommended to use name mangling to access private variables, as it can make the code harder to read and maintain.
Australia
UK
UAE
Singapore
Canada
New
Zealand
Malaysia
USA
India
South
Africa
Ireland
Saudi
Arab
Qatar
Kuwait
Hongkong
Copyright 2016-2023 www.programmingshark.com - All Rights Reserved.
Disclaimer : Any type of help and guidance service given by us is just for reference purpose. We never ask any of our clients to submit our solution guide as it is, anywhere.