name

if __name__ == "__main__":
# 코드    

init

call

class A:
    def __init__(self):
        print('init')
    def __call__(self):
        print('call')
    def myfunc(self):
        print('my')

a = A()
a()
a.myfunc()

"""
init
call
my
"""

super

사용방법

self

class Foo:
    def func1():
        print("function 1")

    def func2(self):
        print("function 2")

f = Foo()
f.func2()
# function 2
f.func1()
# TypeError: func1() takes 0 positional arguments but 1 was given

func1

func2

참고
[1] https://m.blog.naver.com/gmlehde/221893793424
[2] https://velog.io/@magnoliarfsit/RePython-1.-self-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0