Oi Victor, tudo bem com você?
O setter é para alterar o valor de algum atributo e isso irá se refletir quando você faz a operação de atribuição. E ele recebe por padrão um parâmetro para fazer essa troca. Por exemplo:
@like.setter
def like(self, like):
self._like = like
Quando no método principal você chamar o objeto.like
e atribuir um valor ele, por exemplo: objeto.like = 3
. O que o Python internamente faz é trocar o valor antigo que estava em self._like
por esse novo valor passado, no caso o número 3.
Por isso não é possível utilizar o setter da forma apresentada por você,pois o setter espera uma operação de atribuição. Já com o método, você irá apenas invocá-lo, por exemplo: objeto.dar_likes()
e com isso, aumentará automaticamente a quantidade de likes.
Qualquer dúvida é só falar, estou a disposição. Abraços e bons estudos!