Использование декоратора свойств Python в методах - PullRequest
0 голосов
/ 11 апреля 2019

Вид разрывается между этим. Вопрос не в том, как работает свойство, а в его использовании. Я понимаю, что свойство может быть использовано для получения, установки, удаления атрибутов. Но мой вопрос: можно ли использовать его для действий или методов, когда я знаю, что метод никогда не будет иметь никаких параметров? Причина для этого - я чувствую, что это более интуитивно

Вот что я имею в виду,

Class Dancer(object):
    def __init__(self, name):
        self._name = name

    #this would be a typical use case
    @property
    def name(self):
       return self._name

    #is this ok ? 
    @property
    def dance(self):
       print("moves like jagger")
       return self

dancer = Dancer("levine")
print(dancer.name)
dancer.dance    #why not ?

Я начал делать это для моего проекта (только для случаев, когда это имело смысл). Но начал получать обратную реакцию для этого? Что не так с этим? Есть мысли, предложения?

P.S. Я знаю, что такие методы никогда не будут иметь параметров

...