Отказ от ответственности: я не эксперт. Если решение для вас очевидно, это круто! Надеюсь, это когда-нибудь станет для меня очевидным.
Я создал класс Trigger () для запуска событий на основе одного или нескольких правил.
У каждого экземпляра есть метод оценки соответствия правилам.
Например, если существует только одно правило, «среда 0800-1400», и между этими моментами в настоящее время среда, то триггер возвращает значение «Истина».
Перекрывающиеся триггеры недопустимы (см. Пример ниже)
TriggerOne = {
день: «понедельник»,
начало: "08:00",
конец: "14:00"
}
TriggerTwo = {
день: «понедельник»,
начало: «12:00»,
Конец: "16:00"
}
Чтобы проверить перекрывающиеся триггеры, я реализовал self. eq (), который возвращает True, если временные рамки или другие правила перекрываются между триггерами, и False, если правило (а) не перекрываются.
HELP!
Я начал писать собственный класс для управления триггерами, но я надеялся, что может быть способ сделать мои экземпляры триггеров хэшируемыми на основе их правил, чтобы я мог добавить их в set ()
Я прочитал этот вопрос, для ответа в котором говорится, что эквивалентные экземпляры должны хешировать одно и то же:
Создание пользовательского класса Python для сортировки, хеширования
Как я мог (если это возможно) заняться написанием себя. хэш (), который мог бы достичь этого?
Я очень ценю конструктивные отзывы и идеи