检查对象是否是库的实例

Bry*_*ind 1 python scikit-learn

我需要检查一个对象是否来自sklearn库。基本上,我需要检查模型是否属于特定库,以便我可以根据它的类型创建一个通用模式。

我需要检查我是否收到一个model属于该sklearn库的对象。

例如,

if isinstance(model, sklearn):
    #do something
Run Code Online (Sandbox Code Playgroud)

我想避免尝试深入检查特定模型的类型。

例如,

from sklearn.linear_model import LinearRegression
from sklearn.cluster import FeatureAgglomeration
if isinstance(model, sklearn.linear_model.LinearRegression):
   #to something 

if isinstance(model, sklearn.cluster.FeatureAgglomeration):
   #to something
Run Code Online (Sandbox Code Playgroud)

以上是可接受的模型。但是,sklearn模型太多,而且还在不断变化。我只想检查它是否来自sklearn图书馆。

小智 5

不理想,但您可以使用:

if "sklearn" in str(type(model)):
Run Code Online (Sandbox Code Playgroud)