Основное различие между этими двумя методами состоит в том, что
__new__ обрабатывает создание объекта, а __init__ обрабатывает его инициализацию.__new__ вызывается автоматически при вызове имени класса (при создании экземпляра), тогда как __init__ вызывается каждый раз, когда экземпляр класса возвращается __new__, передавая возвращаемый экземпляр в __init__ в качестве параметра self, поэтому даже если вы сохранили экземпляр где-нибудь глобально/статически и возвращали его каждый раз из __new__, для него все-равно будет каждый раз вызываться __init__.Из вышесказанного вытекает что сначала вызывается
__new__, а потом __init__@python_job_interview