富富猪猪 发表于 2020-11-20 11:15:37

不明白为什么错了

不明白为什么我错了

sunrise085 发表于 2020-11-20 11:19:19

你的__init__初始化方法中只有两个参数name和age,但是你创建实例化对象的时候却给了三个参数:"fufufu""18""maths"

富富猪猪 发表于 2020-11-20 11:20:12

sunrise085 发表于 2020-11-20 11:19
你的__init__初始化方法中只有两个参数name和age,但是你创建实例化对象的时候却给了三个参数:"fufufu"" ...

但是我下面又有一个STUDY啊····

富富猪猪 发表于 2020-11-20 11:22:26

sunrise085 发表于 2020-11-20 11:19
你的__init__初始化方法中只有两个参数name和age,但是你创建实例化对象的时候却给了三个参数:"fufufu"" ...

其实我也不是很懂下面这个 DEF STUDY为什么还可以在SELF后面再加一个course_name 这个的意思是再加一个属性吗

sunrise085 发表于 2020-11-20 11:23:07

富富猪猪 发表于 2020-11-20 11:20
但是我下面又有一个STUDY啊····

study又不是初始化。。。
就像一个小孩出生(就是初始化),会有性别、姓名、身份证号。但是对于今后他学习什么做什么工作,那又不是初始化的事儿。。。


今后发帖,请发代码,而不是图片。你想让回答问题的人再敲一遍代码?

sunrise085 发表于 2020-11-20 11:24:50

富富猪猪 发表于 2020-11-20 11:22
其实我也不是很懂下面这个 DEF STUDY为什么还可以在SELF后面再加一个course_name 这个的意思是再加一个属 ...

那个是又添加了一个属性,但是是在执行study的时候添加的,最开始初始化的时候是没有的

Twilight6 发表于 2020-11-20 11:29:38

本帖最后由 Twilight6 于 2020-11-20 11:31 编辑


self 参数是代表自己,实例化对象时候自动传入的

所以你只定义了两个参数,则只要填入两个参数即可

print(Student("fufufu",18))

self 表示的意思是实例化时的实例对象本身,举个例子:

假设你实例化对象:a = Student() ,这个时候 a 即是 self

所以你只能传入两个参数,即 name 和 age

富富猪猪 发表于 2020-11-20 11:38:08

sunrise085 发表于 2020-11-20 11:19
你的__init__初始化方法中只有两个参数name和age,但是你创建实例化对象的时候却给了三个参数:"fufufu"" ...

噢噢···好的谢谢
页: [1]
查看完整版本: 不明白为什么错了