What do __init__ and self do in Python?

I'm learning the Python programming language and I've came across something I don't fully understand.

In a method like:

def method(self, blah):
    def __init__(?):
        ....
    ....

What does self do? What is it meant to be? Is it mandatory?

What does the __init__ method do? Why is it necessary? (etc.)

I think they might be OOP constructs, but I don't know very much.

← Назад к списку