Когда мы пишем простые программы. то код имеет не большое значение.
Но вот как дело доходит до точных расчётов, например график, или финансовые системы.
Тогда не учтённый параметр имеет огромное значение. Давайте научимся инициализировать объекты и если какой-то объект не учтён, то система нам выдаст ошибку
и
Например имеем три параметра(атрибута):
pin
счёт
баланс
Если при взаимдодействии с пользователем, не будет учтён параметр баланс (а юаланс у нас в минусе),
при этом человек заказал вывод денег, то система сработает не правильно. (что повлечёт потери).
Или вы варите суп.
у нас параметры (атрибуты) рецепта:
картофель
горох
морковь
и т .д.
Но горох будет не учтён получится ли гороховый суп? Очевидно нет.
именно поэтому мы страхуемся и явно просим пайтон инициализировать все параметры, а если какой-то параметр не инициализирован (не учавсвтует), то показать нам
исключение в виде:
AttributeError: 'Point' объект не имеет атрибута 'ingr'
Данный код очень распространён в Джанго, там если не указаны все аргументы, мы обязательно получаем эту ошибку.
Надеюсь теперь вы исключение будете воспринимать, как благо и сами программировать его появление. если не указаны все параметры.
Ведь это имеет прямое отношение к безопасности и точности выпорлнения программы.
main.py
class Point:
def __init__(self, ingr='', ingr2=''):
self.move(ingr, ingr2)
........
.........