ll_mat
задокументировано как функция , а не сам тип. Идиома известна как «фабричная функция» - она позволяет «вызываемому создателю» возвращать различные фактические базовые типы в зависимости от своих аргументов.
Вы можете попытаться сгенерировать объект из этого, а затем наследовать от типа этого объекта:
x = spmatrix.ll_mat(10, 10)
class ll_mat(type(x)): ...
имейте в виду, что встроенный тип вполне может объявить, что он не поддерживает подклассы (это можно сделать даже для того, чтобы сэкономить некоторые скромные накладные расходы); если это то, что делает этот тип, то вы не можете создать его подкласс, и вам, скорее всего, придется использовать сдерживание и делегирование, т.е.
class ll_mat(object):
def __init__(self, *a, **k):
self.m = spmatrix.ll_mat(*a, **k)
...
def __getattr__(self, n):
return getattr(self.m, n)
и т. Д. И т. П.