class BPerms: pass class DManage(BPerms): pass class DRead(BPerms): pass class SMCPerms: dt = DManage dr = DRead @classmethod def get_perms_names(cls): perms_names = [attr_name for attr_name, attr_type in cls.__dict__.items() if isinstance(attr_type, type)] # for attr_name, attr_type in cls.__dict__.items(): # if isinstance(attr_type, type): # perms_names.append(attr_name) return perms_names print(SMCPerms.get_perms_names())