
149行输入实参
150和151输出信息,但是显示错误,刚刚学到类,还不太懂,具体要怎么修改呢?
我在这里列出你的错误,我也买过这本书,上面的内容有些容易混淆:
- 你的做法
···
class Dog:
'''xxx'''
···
是允许的,但书上写了括号,一般情况下是不需要就不写,书上只是兼容Python2,括号内需要有“Object”,
Python3是不需要的; - 你的_init_(self, xxx)函数名写错了,前后应该各有两个下划线,书上写得不太清楚,当初我也掉坑了;
- 对于2的补充:想__init__(self, xxx)这样前后各有两个下划线的函数是Python类中的特殊函数,能够实现类的特殊功能,比如Dog类的__init__函数,它会在生成对象时调用,self属性不需要自己给出,只需给出后面的name和age即可;
- Python的类中,函数一般都含有self属性,第3条中的__init__就是一个例子;
- 你代码中最后三行错了(不含空行),它们的前面不应该有缩进,否则就是定义在类中,而此时Dog还没有定义完,因此不能创建Dog的对象,应该去掉它们前面的缩进。
参数有误
你的类的参数有3个,但是你只2传递了两个
感觉是你的类没带括号 clss Dog():要这样
两个问题:
- 定义init函数的时候前面后是双下划线,python特有的构造函数方式。
- 创建实例的时候my_dog缩进错误,必须是从头开始,而不是像图中包含在内里面。


把这几行前面的换行符去掉,顶到头

缩进错误啊这!