Get the App
SLTechnology News&Howtos  ›  Development  › 

An example Analysis of the double underscore before the name in python

Shulou Source: shulou.com Published: 2022-06-01 04:23:45 09月13日 Update

This article will explain in detail the example analysis of the double underscore before the name in python. The editor thinks it is very practical, so I share it with you for reference. I hope you can get something after reading this article.

The double underscore before the name (for example: _ _ shahriar)

The use of a name (specifically a method name) preceded by a double underscore is not a convention, but has a specific meaning for the interpreter. This usage in Python is used to avoid name conflicts with subclass definitions. The Python documentation indicates that any identifier in the form of spam (at least two leading underscores and at most one subsequent underscore) will be expected, "_ internal_use" has not changed, while "method_name" has been changed to "_ ClassName__method_name". At this point, if you create a subclass B of A, you will not be able to easily override the method "_ _ method_name" in A. The spam form is replaced by the original text, where classname is the current class name that removes the leading underscore. For example, the following example:

Class A (object):... Def _ internal_use (self):... Pass... Def _ _ method_name (self):... Pass... > dir (A ()) ['_ averaged methodological name,...,'_ internal_use']

As expected, "_ internal_use" has not changed, while "method_name" has been changed to "_ ClassNamemethod_name". At this point, if you create a subclass B of A, you will not be able to easily override the method "_ _ method_name" in A.

This is the end of the article on "sample analysis of double underscores before names in python". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, please share it for more people to see.

Tags: Underscores names subclasses methods articles examples middle names analysis prefixes forms more as good practical two examples content original text conventions meaning Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Apple Shulou Information Xiaomi NVidia Linux