Я смотрю с такой стороны:
-
@staticmethod это контракт, я говорю пользователям класса, что его можно / нужно вызывать не инстанцируя класс
- если я такой смысл в этот метод не закладываю, то я не добавляю эту логику в контракт, не вешаю
@staticmethod - но это повод задуматься почему так, возможно вынести из класса вообще этот метод. А может и нет — может его в будущем ждёт использование данных и других методов, и будет обидно