Вы можете использовать @classmethod, таким образом, функция будет иметь статус c и получит класс в качестве первого аргумента по умолчанию, а также переменная _Instances, сделанная здесь c.
Когда новый Создается экземпляр Cat, он будет добавлен в список _Instances.
class Cat:
_Instances=[]
@classmethod
def getoldest(cls):
_Instance = max(cls._Instances,key=lambda Instance: Instance.age)
return ("Oldest {} is {}, and {} years old.".format(cls.__name__,_Instance.name,_Instance.age))
def __init__(self, name, age):
self.name = name
self.age = age
self.__class__._Instances.append(self)
Cat("a",1)
Cat("b",2)
Cat("c",3)
Cat("d",4)
print(Cat.getoldest())