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