すべてのサブクラスを再帰的に取得するための私のクラスメソッドは次のとおりです。
@classmethod
def get_subclasses(cls):
subclasses = set()
for subclass in cls.__subclasses__():
subclasses.add(subclass)
subclasses.update(subclass.get_subclasses())
return subclasses
ワンライナーにする方法はありますか?何かのようなもの:
return set(subclass.__subclasses__() for subclass in self.__subclasses__())