uno puede hacer algo como esto:Usando misma función que en la instancia y classmethod pitón
class master:
@combomethod
def foo(param):
param.bar() # Param could be type as well as object
class slaveClass(master):
@classmethod
def bar(cls):
print("This is class method")
slaveType = slaveClass
slaveType.foo()
class slaveInstance(master):
def __init__(self, data):
self.data = data
def bar(self):
print("This is "+self.data+" method")
slaveType = slaveInstance("instance")
slaveType.foo()
combomethod
se define en "Creating a method that is simultaneously an instance and class method".
Mi pregunta es, ¿por qué es así, que el primer parámetro predeterminado no se puede usar como parámetro de comboclass. O al menos, ¿por qué no puedo pasar object to classmethod como primer parámetro? Sé cuál es la diferencia entre classmethod y instancemethods y lo que son decoradores, pero podría no entender cómo se hace el paso de parámetro incorporado @classmethod
y self
. ¿Hay solo algunas limitaciones técnicas? ¿O por qué no está integrado el combomethod
?
No utilice por favor el texto-habla ("algo bajo"), en los mensajes. –
No puedo entender lo que está preguntando aquí ... –
@Ignacio Quiero saber si estoy haciendo todo mal y ¿hay alguna manera más simple? Pensé que podría haber alguna forma incorporada para hacer lo mismo y si no, ¿por qué no? – Johu