Python

Define Private Methods/Functions in Python Class.

Python is very powerful and famous language, which allow us to write code as per object orientated programming (OOP) concepts. Encapsulation is one of the fundamental concepts in OOP. In encapsulation, we can wrap data and method in one unit and also restrict them to access from outside class.

As other Object Oriented Programming languages, Python also allow us to define private methods and variables.

Private Methods/Functions:

In Python, private methods can be defined as prefix function with double underscore (__) as following.

def __function_name(self)


If you try to access private method directly, it will raise exception but if you can access private method by calling it in a public method, as following.

def call_private_method(self):
 return self.__function_name()

Name mangling:

Here is another way to call private method that python allowing called name mangling. It means, any identifier starting with double underscore (__) or at most one trailing underscore is replaced with the _classname__private_function_name, where classname is the current class name with leading underscore(s) stripped. Following is the example.

obj = Classname()
obj._Classname__private_function()

Above method to call private method will show you the output of the private function instead of raising exception.

Hope this will someone. For more interesting posts please subscribe to newsletter and like and share the post.

websourceblog

ReactJs, NodeJs, Amazon Web Services, Symfony, Laravel, CodeIgniter, Zend Framework, WordPress, Drupal, Magento, Angular

Recent Posts

How to install and configure Apache2 on WSL2?

I hope you already have WSL2 installed and enabled. So, setting up Apache2 on WSL2…

4 months ago

How to install NVM on Windows?

Install NVM on Windows Node Js is a JavaScript runtime environment used widely in today’s…

5 months ago

How to reset WSL 2 user’s password?

You can easily reset WSL 2 users' password, by just following the following steps. Open…

9 months ago

DreamHost Web Hosting

DreamHost a web hosting company, founded in 1997. It is offering sort of hosting services,…

1 year ago

How to add submenu or menu in any specific menu option in WordPress programmatically?

Menus in WordPress are highly versatile and can be easily modified to change in your…

2 years ago

Laravel 8 error target class controller does not exist.

Laravel is famous and robust PHP framework, widely used in different type of projects. While…

2 years ago