DEV Community

Super Kai (Kazuya Ito)
Super Kai (Kazuya Ito)

Posted on • Edited on

Underscore in Python (2)

Buy Me a Coffee

*Memo:

  • My post explains the single, double and triple leading and trailing underscore with the variables, methods and classes in a class.
  • My post explains the single, double and triple leading and trailing underscore with the variables, functions and classes in a function.

A single, double and triple leading and trailing underscore can be used with variables, functions and classes as shown below:

<Variables>:

_var = "_var"           # SLU       (Acceptable)
__var = "__var"         # DLU       (Acceptable)
___var = "___var"       # TLU       (Acceptable)
var_ = "var_"           # STU       (Acceptable)
var__ = "var__"         # DTU       (Acceptable)
var___ = "var___"       # TTU       (Acceptable)
_var_ = "_var_"         # SLU & STU (Acceptable)
__var_ = "__var_"       # DLU & STU (Acceptable)
___var_ = "___var_"     # TLU & STU (Acceptable)
_var__ = "_var__"       # SLU & DTU (Acceptable)
__var__ = "__var__"     # DLU & DTU (Acceptable)
___var__ = "___var__"   # TLU & DTU (Acceptable)
_var___ = "_var___"     # SLU & TTU (Acceptable)
__var___ = "__var___"   # DLU & TTU (Acceptable)
___var___ = "___var___" # TLU & TTU (Acceptable)

print(_var)      # _var
print(__var)     # __var
print(___var)    # ___var
print(var_)      # var_
print(var__)     # var__
print(var___)    # var___
print(_var_)     # _var_
print(__var_)    # __var_
print(___var_)   # ___var_
print(_var__)    # _var__
print(__var__)   # __var__
print(___var__)  # ___var__
print(_var___)   # _var___
print(__var___)  # __var___
print(___var___) # ___var___
Enter fullscreen mode Exit fullscreen mode

<Functions>:

def _func(): pass      # SLU       (Acceptable)
def __func(): pass     # DLU       (Acceptable)
def ___func(): pass    # TLU       (Acceptable)
def func_(): pass      # STU       (Acceptable)
def func__(): pass     # DTU       (Acceptable)
def func___(): pass    # TTU       (Acceptable)
def _func_(): pass     # SLU & STU (Acceptable)
def __func_(): pass    # DLU & STU (Acceptable)
def ___func_(): pass   # TLU & STU (Acceptable)
def _func__(): pass    # SLU & DTU (Acceptable)
def __func__(): pass   # DLU & DTU (Acceptable)
def ___func__(): pass  # TLU & DTU (Acceptable)
def _func___(): pass   # SLU & TTU (Acceptable)
def __func___(): pass  # DLU & TTU (Acceptable)
def ___func___(): pass # TLU & TTU (Acceptable)

print(_func.__name__)      # _func
print(__func.__name__)     # __func
print(___func.__name__)    # ___func
print(func_.__name__)      # func_
print(func__.__name__)     # func__
print(func___.__name__)    # func___
print(_func_.__name__)     # _func_
print(__func_.__name__)    # __func_
print(___func_.__name__)   # ___func_
print(_func__.__name__)    # _func__
print(__func__.__name__)   # __func__
print(___func__.__name__)  # ___func__
print(_func___.__name__)   # _func___
print(__func___.__name__)  # __func___
print(___func___.__name__) # ___func___
Enter fullscreen mode Exit fullscreen mode

<Classes>:

class _Cls: pass      # SLU       (Acceptable)
class __Cls: pass     # DLU       (Acceptable)
class ___Cls: pass    # TLU       (Acceptable)
class Cls_: pass      # STU       (Acceptable)
class Cls__: pass     # DTU       (Acceptable)
class Cls___: pass    # TTU       (Acceptable)
class _Cls_: pass     # SLU & STU (Acceptable)
class __Cls_: pass    # DLU & STU (Acceptable)
class ___Cls_: pass   # TLU & STU (Acceptable)
class _Cls__: pass    # SLU & DTU (Acceptable)
class __Cls__: pass   # DLU & DTU (Acceptable)
class ___Cls__: pass  # TLU & DTU (Acceptable)
class _Cls___: pass   # SLU & TTU (Acceptable)
class __Cls___: pass  # DLU & TTU (Acceptable)
class ___Cls___: pass # TLU & TTU (Acceptable)

print(_Cls().__class__.__name__)      # _Cls
print(__Cls().__class__.__name__)     # __Cls
print(___Cls().__class__.__name__)    # ___Cls
print(Cls_().__class__.__name__)      # Cls_
print(Cls__().__class__.__name__)     # Cls__
print(Cls___().__class__.__name__)    # Cls___
print(_Cls_().__class__.__name__)     # _Cls_
print(__Cls_().__class__.__name__)    # __Cls_
print(___Cls_().__class__.__name__)   # ___Cls_
print(_Cls__().__class__.__name__)    # _Cls__
print(__Cls__().__class__.__name__)   # __Cls__
print(___Cls__().__class__.__name__)  # ___Cls__
print(_Cls___().__class__.__name__)   # _Cls___
print(__Cls___().__class__.__name__)  # __Cls___
print(___Cls___().__class__.__name__) # ___Cls___
Enter fullscreen mode Exit fullscreen mode

Top comments (0)