我理解mixin看起来像继承,但更像是组合.
(编辑:我倾向于giving additional functionality/attributes通过mixin 思考而不是giving another is-a relationship.)在
心理上,当我使用mixin时,我说的是这样的东西:我给你这个你缺少的mixin,而不是你实际上也是这个mixin-type. (IS-A)
我读了几遍,你应该更喜欢作文而不是继承.
我们可以使用直接的成分而不是mixins,什么是mixin?
如果我不得不猜测,那是因为my_instance.foo()比my_instance.another_instance.foo()更容易吗?
(如果mixin有foo(),你可以使用my_instance.foo(),当你将another_instance复合为my_instance的属性时,你需要my_instance.another_instance.foo()
还有其他原因吗?
编辑:
所以即使我觉得它有一个-a,但mixin仍然是一种关系.当你使用is-a时,你得到的好处是更清洁的界面.那就是我如何理解德尔南的答案.
我有分类问题,我想测试所有可用的算法来测试它们在解决问题时的表现.如果您知道除下面列出的分类算法以外的任何分类算法,请在此处列出.
GradientBoostingClassifier()
DecisionTreeClassifier()
RandomForestClassifier()
LinearDiscriminantAnalysis()
LogisticRegression()
KNeighborsClassifier()
GaussianNB()
ExtraTreesClassifier()
BaggingClassifier()
Run Code Online (Sandbox Code Playgroud)
非常感谢您的帮助.
python algorithm classification machine-learning scikit-learn