class Student:
def __init__(self, name):
self.name = name
print('姓名为%s的对象被创建!' % self.name)
def __del__(self):
print('姓名为%s的对象被销毁!' % self.name)
def func(name):
stu = Student(name)
if __name__ == '__main__':
stu1 = Student('李小萌')
stu2 = Student('马红')
stu3 = stu2
del stu2
func('张刚')
del stu3
stu4 = Student('刘建')
我把你的代码复制过来运行就是和书上一模一样的啊,你再把我这代码复制运行试试看哈!!!
姓名为李小萌的对象被创建!
姓名为马红的对象被创建!
姓名为张刚的对象被创建!
姓名为张刚的对象被销毁!
姓名为马红的对象被销毁!
姓名为刘建的对象被创建!
姓名为李小萌的对象被销毁!
姓名为刘建的对象被销毁!
① 导入线性回归模型的库
# 导入需要的库
from sklearn import linear_model
② 四步走:构建模型 + 训练模型 + 模型系数 + 模型预测
# 1.构建模型
model = linear_model.LinearRegression()
# 2.训练模型
model.fit(X,y)
# 3.模型系数
print("截距:",model.coef_)
print("系数:",model.intercept_)
y_pred = model.predict(X)
plt.plot(X,y_pred,'r--') # 拟合方程
# 展现图形
plt.show()
# 4.模型预测
result = model.predict([[12]])
print("直径为12的披萨预测的价格为:",result)
细节解析: r–表示拟合方程以红色虚线呈现
综合①②完整代码为:
import matplotlib.pyplot as plt
from sklearn import linear_model
X = [[6],[8],[10],[14],[18]]
y = [[7],[9],[13],[17.5],[18]]
# 绘制散点图
plt.scatter(X,y)
# 展现网格
plt.grid()
# 1.构建模型
model = linear_model.LinearRegression()
# 2.训练模型
model.fit(X,y)
# 3.模型系数
print("截距:",model.coef_)
print("系数:",model.intercept_)
y_pred = model.predict(X)
plt.plot(X,y_pred,'r--') # 拟合方程
# 展现图形
plt.show()
# 4.模型预测
result = model.predict([[12]])
print("直径为12的披萨预测的价格为:",result)
# 运行结果为:
# 截距: [[0.9762931]]
# 系数: [1.96551724]
# 直径为12的披萨预测的价格为: [[13.68103448]]
③ 运行结果为: