En Python, ¿puede el valor de retorno de un método en una clase ser otra clase?
Por supuesto.
Existe un concepto de metaclase en Python, y la metaclase es una clase utilizada para generar clases.
También existe el concepto de función de fábrica, lo que significa que una función devuelve directamente una clase. clase?MetaDog:
def?__init__(self,?color=''):
self.color?=?color
def?show_color(self ):
print('mi?perro?color?es?{}.'.format(self.color))
clase?Animal:
def?dog_class(self):
retorno?MetaDog
animal?=?Animal()
Perro?=?animal.dog_class()
mi_perro?=?Perro()
mi_perro.color?=?'amarillo'
#?mi_perro?=?Perro('amarillo')
mi_perro.show_color()
#?mi?perro?color?es?amarillo.