Say that if you had a class and you defined it as:
class A:
pass
And when you use the function:
dir(A)
Returns all the methods and attributes that the class contains:
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
My question is: what methods are double underlined before and after them, such as __class__, __delattr__, __dict__, __init__, are called? I suggested that they are called constructors, but after research - it seems that the term refers only to a function __init__. Does anyone know if there is a specific category for calling these methods?