python的init中的self问题
classPerson:def__init__(self,name):self.name=name学习python时候看到这个,一直不太理解这个self.name是什么意...
class Person:
def __init__(self, name):
self.name = name
学习python时候看到这个,一直不太理解这个self.name是什么意思? 是一个方法么? 后面的是name参数
那意思就是把name参数值赋给self.name 现在想知道这个self.name具体是什么 展开
def __init__(self, name):
self.name = name
学习python时候看到这个,一直不太理解这个self.name是什么意思? 是一个方法么? 后面的是name参数
那意思就是把name参数值赋给self.name 现在想知道这个self.name具体是什么 展开
3个回答
展开全部
__init__()是类的构造函数,在建立对象时调用。self是对“对象”自身的引用。相当于c++中的this。
python规定:访问类成员时,需要在前面加上this。这里,this.name = name表示为Person类添加了属性name。
如果变量前不加this,则视为局部变量。这个变量会在方法运行结束后失效。而属性在整个类的范围内都是有效的。
望采纳,谢谢支持!
python规定:访问类成员时,需要在前面加上this。这里,this.name = name表示为Person类添加了属性name。
如果变量前不加this,则视为局部变量。这个变量会在方法运行结束后失效。而属性在整个类的范围内都是有效的。
望采纳,谢谢支持!
追问
意思是 self.name是一个类的属性对么
其实我在书上看的时候 他只提到一句 ‘ 创建完上面的类后
就可以使用self.name这个域了 ’
我一直被这句话困扰着 不知道这个域是个什么意思
追答
域?不要纠结这些词眼。这个词我也没听说过。
self.name 是类的属性。
我上面的回答不小心写错了,不小心把self写成了this。
展开全部
class中 def __init__()不是必须的,可以有也可以没有。
但是如果设置了def __init__()那么在后面的定义中就必须要使用self
def __init__():也叫着初始化函数。
self.name = name
self.age = age
可以理解为初始化定义了2个变量。
在后面的def里面调用的时候必须要使用self.name和self.age 而不能使用name 或者age
python简明教程里面的例子其实说的很清楚的
但是如果设置了def __init__()那么在后面的定义中就必须要使用self
def __init__():也叫着初始化函数。
self.name = name
self.age = age
可以理解为初始化定义了2个变量。
在后面的def里面调用的时候必须要使用self.name和self.age 而不能使用name 或者age
python简明教程里面的例子其实说的很清楚的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
self表示当前对象,类的属性、方法都是和对象绑定,所以在使用时,需要添加self前缀,从而告诉Python,操作当前对象的XXX属性或XXX方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询