2
我是Python新手,并且一直在阅读一些Python科学库的API示例。为什么这些python代码实例都调用构造函数两次?
在一个库中,scikit-learn,代码示例总是在没有参数的情况下调用构造函数,然后再次调用所有参数。
下面是一个例子(见最后一行,和最后一行(CLF =线性_....),从sklearn.linear_model.SGDRegressor
文件之前采取第三:
>>> import numpy as np
>>> from sklearn import linear_model
>>> n_samples, n_features = 10, 5
>>> np.random.seed(0)
>>> y = np.random.randn(n_samples)
>>> X = np.random.randn(n_samples, n_features)
>>> clf = linear_model.SGDRegressor()
>>> clf.fit(X, y)
...
SGDRegressor(alpha=0.0001, average=False, epsilon=0.1, eta0=0.01,
fit_intercept=True, l1_ratio=0.15, learning_rate='invscaling',
loss='squared_loss', n_iter=5, penalty='l2', power_t=0.25,
random_state=None, shuffle=True, verbose=0, warm_start=False)
我想我可能误解的东西关于Python,因为我不明白为什么构造函数调用两次?是否有一个原因,还是只是为了显示构造函数的所有可能的参数一个奇怪的方式?
你确定他叫了两次吗?这不仅仅是构造实例的'__repr__'的一个例子吗?该行不以'>>>'作为前缀。 – pistache