примерное сравнение в питоне

Я хочу, чтобы оператор '==' использовал приблизительное сравнение в моей программе: значения с плавающей запятой x и y равны (==), если

abs(x-y)/(0.5(x+y)) < 0.001

Какой хороший способ сделать это? Учитывая, что float является встроенным типом, я не думаю, что смогу переопределить оператор ==, могу ли я?

Обратите внимание, что я хотел бы использовать другие функции float, единственное, что я хотел бы изменить, это оператор равенства.

РЕДАКТИРОВАТЬ:

Спасибо за ответы, и я понимаю ваши аргументы о читабельности и других проблемах.

Тем не менее, я действительно предпочел бы, если это возможно, продолжать использовать обычный тип с плавающей точкой, вместо того, чтобы иметь новый класс или новую функцию сравнения. Можно ли вообще переопределить оператор == для регулярных операций с плавающей запятой?

Мои причины:

(а) каждый, кто использует программу, которую я пишу, хочет, чтобы результаты сравнивались поплавками

(б) в мире никому не захочется использовать значение по умолчанию == для чисел с плавающей запятой .. Почему это даже на языке ???

(c) мне не нравятся дополнительные слова в коде; очевидно, использование существующего float не приводит к изменениям в коде вообще

РЕДАКТИРОВАТЬ 2.

Теперь, когда я знаю, что не могу перегрузить оператор == для float, я должен изменить свой вопрос. Это станет настолько другим, что я сделаю новый впользовательское сравнение для встроенных контейнеров

Ответы на вопрос(3)

Ваш ответ на вопрос