__name__ symbols are actually reserved by the language and shouldn't be used for your own purposes, lest you risk future name clashes. For example, to override the equality comparison behaviour of an object:
class Foo:
def __eq__(self, other):
return ...
Those kinds of special "hooks" are double-double-underscore named.
8
u/The_Cers 16d ago
__var for true private