As I have been told, placing a double underscore in front of a method makes it private in Python. Thus,
class Test:
def __private_function(self):
print("This function is private!")
def public_function(self):
print("This function is public!")
However, it seems like a variety of methods like "init" and "mro" among others, are completely public despite the double underscore in front of their names. In other words:
class Test:
def __init__(self):
print("This function is public!")
Why does this occur?