Как я понял из моего раннего опыта CPTS:
Конструкторы: Конструкторы в основном используются в классах для инициализации класса значениями и дают возможность выполнять некоторые фоновые работы на основе создания. Если вы передаете значения во время создания объекта, именно здесь вы можете обрабатывать присвоение этих значений переменным в вашем классе. (В этом случае при построении вы увеличиваете переменную, которая отслеживает население).
Деструкторы: Деструкторы очищают класс. В python из-за сборщика мусора это не так важно, как языки, которые могут оставлять висячие указатели (c ++). (В этом случае вы уменьшаете популяционную переменную при уничтожении объекта).